Plotly is a free and open-source graphing library for Python.
The popular Pandas data analysis and manipulation tool provides plotting functions on its DataFrame and Series objects, which have historically produced matplotlib plots.
Since version 0.25, Pandas has provided a mechanism to use different backends, and as of version 4.8 of plotly, you can now use a Plotly Express-powered backend for Pandas plotting. This means you can now produce interactive plots directly from a data frame, without even needing to import Plotly.
Plotly installed.plotly may be installed using pip
cmd
pip install plotly
or conda.
cmd
conda install -c plotly plotly
Note: No internet connection, account, or payment is required to use plotly.py. Prior to version 4, this library could operate in either an "online" or "offline" mode. The documentation tended to emphasize the online mode, where graphs get published to the Chart Studio web service. In version 4, all "online" functionality was removed from the plotly package and is now available as the separate, optional, chart-studio package (See below). plotly.py version 4 is "offline" only, and does not include any functionality for uploading figures or data to cloud services.
pd.options.plotting.backend to "plotly" and call .plot() to get a plotly.graph_objects.Figure object back, just like if you had called Plotly Express directly:import plotly.graph_objects as go
## It generate a bar graph
fig = go.Figure(data=go.Bar(y=[2, 3, 1]))
fig.write_html('first_figure.html', auto_open=True)
##Double click on first_figure.html file to open in web browser
Note: Make sure you only have one installation of Python on your computer when you do this, otherwise the installation may not work.
Note: If you already have anaconda installed or juputer notebook installed no need to install it again, but check with the specified version also.
For use in the classic Jupyter Notebook, install the notebook and ipywidgets packages using pip.
cmd
pip install "notebook>=5.3" "ipywidgets>=7.2"
or conda.
cmd
conda install "notebook>=5.3" "ipywidgets>=7.2"
These packages contain everything you need to run a Jupyter notebook.
jupyter notebook
and display plotly figures inline using the notebook renderer.
import plotly.graph_objects as go
fig = go.Figure(data=go.Bar(y=[2, 3, 1]))
fig.show()
For use in JupyterLab, install the jupyterlab and ipywidgets packages using pip.
cmd
pip install jupyterlab "ipywidgets>=7.5"
or conda.
cmd
conda install jupyterlab "ipywidgets=7.5"
Then run the following commands to install the required JupyterLab extensions (note that this will require node to be installed):
JupyterLab renderer support
cmd
jupyter labextension install jupyterlab-plotly@4.9.0
OPTIONAL: Jupyter widgets extension
cmd
jupyter labextension install @jupyter-widgets/jupyterlab-manager plotlywidget@4.9.0
These packages contain everything you need to run JupyterLab
cmd
jupyter lab
and display plotly figures inline using the plotly_mimetype renderer.
import plotly.graph_objects as go
fig = go.Figure(data=go.Bar(y=[2, 3, 1]))
fig.show()
Plotly Express is a terse, consistent, high-level API for creating figures.
Every Plotly Express function uses graph objects internally and returns a plotly.graph_objects.Figure instance.
Plotly Express provides more than 30 functions for creating different types of figures. The API for these functions was carefully designed to be as consistent and easy to learn as possible, making it easy to switch from a scatter plot to a bar chart to a histogram to a sunburst chart throughout a data exploration session. Scroll down for a gallery of Plotly Express plots, each made in a single function call.
Plotly Express currently includes the following functions:
1) Basics: scatter, line, area, bar, funnel, timeline
2) Part-of-Whole: pie, sunburst, treemap, funnel_area
3) 1D Distributions: histogram, box, violin, strip
4) 2D Distributions: density_heatmap, density_contour
5) Matrix Input: imshow
6) 3-Dimensional: scatter_3d, line_3d
7) Multidimensional: scatter_matrix, parallel_coordinates, parallel_categories
8) Tile Maps: scatter_mapbox, line_mapbox, choropleth_mapbox, density_mapbox
9) Outline Maps: scatter_geo, line_geo, choropleth
10) Polar Charts: scatter_polar, line_polar, bar_polar
11) Ternary Charts: scatter_ternary, line_ternary
The following set of figures is just a sampling of what can be done with Plotly Express.
## Scatter Plot
import plotly.express as px
df = px.data.iris()
fig = px.scatter(df, x="sepal_width", y="sepal_length", color="species")
fig.show()
## Scatter Plot with error bar
import plotly.express as px
df = px.data.iris()
df["e"] = df["sepal_width"]/100
fig = px.scatter(df, x="sepal_width", y="sepal_length", color="species", error_x="e", error_y="e")
fig.show()
## Scatter Plot with trendlines
import plotly.express as px
df = px.data.iris()
fig = px.scatter(df, x="sepal_width", y="sepal_length", color="species", marginal_y="violin",
marginal_x="box", trendline="ols")
fig.show()
## Bar Chats
import plotly.express as px
df = px.data.tips()
fig = px.bar(df, x="sex", y="total_bill", color="smoker", barmode="group")
fig.show()
## facet plots.
import plotly.express as px
df = px.data.tips()
fig = px.bar(df, x="sex", y="total_bill", color="smoker", barmode="group", facet_row="time", facet_col="day",
category_orders={"day": ["Thur", "Fri", "Sat", "Sun"], "time": ["Lunch", "Dinner"]})
fig.show()
## scatterplot matrices (SPLOMs).
import plotly.express as px
df = px.data.iris()
fig = px.scatter_matrix(df, dimensions=["sepal_width", "sepal_length", "petal_width", "petal_length"], color="species")
fig.show()
df = px.data.iris()
df
| sepal_length | sepal_width | petal_length | petal_width | species | species_id | |
|---|---|---|---|---|---|---|
| 0 | 5.1 | 3.5 | 1.4 | 0.2 | setosa | 1 |
| 1 | 4.9 | 3.0 | 1.4 | 0.2 | setosa | 1 |
| 2 | 4.7 | 3.2 | 1.3 | 0.2 | setosa | 1 |
| 3 | 4.6 | 3.1 | 1.5 | 0.2 | setosa | 1 |
| 4 | 5.0 | 3.6 | 1.4 | 0.2 | setosa | 1 |
| ... | ... | ... | ... | ... | ... | ... |
| 145 | 6.7 | 3.0 | 5.2 | 2.3 | virginica | 3 |
| 146 | 6.3 | 2.5 | 5.0 | 1.9 | virginica | 3 |
| 147 | 6.5 | 3.0 | 5.2 | 2.0 | virginica | 3 |
| 148 | 6.2 | 3.4 | 5.4 | 2.3 | virginica | 3 |
| 149 | 5.9 | 3.0 | 5.1 | 1.8 | virginica | 3 |
150 rows × 6 columns
## Multidimensional Parallel Coordinates
import plotly.express as px
df = px.data.iris()
fig = px.parallel_coordinates(df, color="species_id", labels={"species_id": "Species",
"sepal_width": "Sepal Width", "sepal_length": "Sepal Length",
"petal_width": "Petal Width", "petal_length": "Petal Length", },
color_continuous_scale=px.colors.diverging.Tealrose, color_continuous_midpoint=2)
fig.show()
More Details of parallel coordinates and parallel categories
## Multidimensional Parallel Categories
import plotly.express as px
df = px.data.tips()
fig = px.parallel_categories(df, color="size", color_continuous_scale=px.colors.sequential.Inferno)
fig.show()
## Boubble plots with hover labels.
import plotly.express as px
df = px.data.gapminder()
fig = px.scatter(df.query("year==2007"), x="gdpPercap", y="lifeExp", size="pop", color="continent",
hover_name="country", log_x=True, size_max=60)
fig.show()
px.data.gapminder()
| country | continent | year | lifeExp | pop | gdpPercap | iso_alpha | iso_num | |
|---|---|---|---|---|---|---|---|---|
| 0 | Afghanistan | Asia | 1952 | 28.801 | 8425333 | 779.445314 | AFG | 4 |
| 1 | Afghanistan | Asia | 1957 | 30.332 | 9240934 | 820.853030 | AFG | 4 |
| 2 | Afghanistan | Asia | 1962 | 31.997 | 10267083 | 853.100710 | AFG | 4 |
| 3 | Afghanistan | Asia | 1967 | 34.020 | 11537966 | 836.197138 | AFG | 4 |
| 4 | Afghanistan | Asia | 1972 | 36.088 | 13079460 | 739.981106 | AFG | 4 |
| ... | ... | ... | ... | ... | ... | ... | ... | ... |
| 1699 | Zimbabwe | Africa | 1987 | 62.351 | 9216418 | 706.157306 | ZWE | 716 |
| 1700 | Zimbabwe | Africa | 1992 | 60.377 | 10704340 | 693.420786 | ZWE | 716 |
| 1701 | Zimbabwe | Africa | 1997 | 46.809 | 11404948 | 792.449960 | ZWE | 716 |
| 1702 | Zimbabwe | Africa | 2002 | 39.989 | 11926563 | 672.038623 | ZWE | 716 |
| 1703 | Zimbabwe | Africa | 2007 | 43.487 | 12311143 | 469.709298 | ZWE | 716 |
1704 rows × 8 columns
## Animations.
import plotly.express as px
df = px.data.gapminder()
fig = px.scatter(df, x="gdpPercap", y="lifeExp", animation_frame="year", animation_group="country",
size="iso_num", color="continent", hover_name="country", facet_col="continent",
log_x=True, size_max=45, range_x=[100,100000], range_y=[25,90])
fig.show()
## Line chart
import plotly.express as px
df = px.data.gapminder()
fig = px.line(df, x="year", y="lifeExp", color="continent", line_group="country", hover_name="country",
line_shape="spline", render_mode="svg")
fig.show()
## Area Charts
import plotly.express as px
df = px.data.gapminder()
fig = px.area(df, x="year", y="pop", color="continent", line_group="country")
fig.show()
## Make sure to use latest version of `pyplot` to avail all the features
import plotly
print(plotly.__version__)
5.6.0
df =px.data.gapminder()
type(df)
pandas.core.frame.DataFrame
px.data.gapminder().query("year == 2007").query("continent == 'Europe'")
| country | continent | year | lifeExp | pop | gdpPercap | iso_alpha | iso_num | |
|---|---|---|---|---|---|---|---|---|
| 23 | Albania | Europe | 2007 | 76.423 | 3600523 | 5937.029526 | ALB | 8 |
| 83 | Austria | Europe | 2007 | 79.829 | 8199783 | 36126.492700 | AUT | 40 |
| 119 | Belgium | Europe | 2007 | 79.441 | 10392226 | 33692.605080 | BEL | 56 |
| 155 | Bosnia and Herzegovina | Europe | 2007 | 74.852 | 4552198 | 7446.298803 | BIH | 70 |
| 191 | Bulgaria | Europe | 2007 | 73.005 | 7322858 | 10680.792820 | BGR | 100 |
| 383 | Croatia | Europe | 2007 | 75.748 | 4493312 | 14619.222720 | HRV | 191 |
| 407 | Czech Republic | Europe | 2007 | 76.486 | 10228744 | 22833.308510 | CZE | 203 |
| 419 | Denmark | Europe | 2007 | 78.332 | 5468120 | 35278.418740 | DNK | 208 |
| 527 | Finland | Europe | 2007 | 79.313 | 5238460 | 33207.084400 | FIN | 246 |
| 539 | France | Europe | 2007 | 80.657 | 61083916 | 30470.016700 | FRA | 250 |
| 575 | Germany | Europe | 2007 | 79.406 | 82400996 | 32170.374420 | DEU | 276 |
| 599 | Greece | Europe | 2007 | 79.483 | 10706290 | 27538.411880 | GRC | 300 |
| 683 | Hungary | Europe | 2007 | 73.338 | 9956108 | 18008.944440 | HUN | 348 |
| 695 | Iceland | Europe | 2007 | 81.757 | 301931 | 36180.789190 | ISL | 352 |
| 755 | Ireland | Europe | 2007 | 78.885 | 4109086 | 40675.996350 | IRL | 372 |
| 779 | Italy | Europe | 2007 | 80.546 | 58147733 | 28569.719700 | ITA | 380 |
| 1019 | Montenegro | Europe | 2007 | 74.543 | 684736 | 9253.896111 | MNE | 499 |
| 1091 | Netherlands | Europe | 2007 | 79.762 | 16570613 | 36797.933320 | NLD | 528 |
| 1151 | Norway | Europe | 2007 | 80.196 | 4627926 | 49357.190170 | NOR | 578 |
| 1235 | Poland | Europe | 2007 | 75.563 | 38518241 | 15389.924680 | POL | 616 |
| 1247 | Portugal | Europe | 2007 | 78.098 | 10642836 | 20509.647770 | PRT | 620 |
| 1283 | Romania | Europe | 2007 | 72.476 | 22276056 | 10808.475610 | ROU | 642 |
| 1343 | Serbia | Europe | 2007 | 74.002 | 10150265 | 9786.534714 | SRB | 688 |
| 1379 | Slovak Republic | Europe | 2007 | 74.663 | 5447502 | 18678.314350 | SVK | 703 |
| 1391 | Slovenia | Europe | 2007 | 77.926 | 2009245 | 25768.257590 | SVN | 705 |
| 1427 | Spain | Europe | 2007 | 80.941 | 40448191 | 28821.063700 | ESP | 724 |
| 1475 | Sweden | Europe | 2007 | 80.884 | 9031088 | 33859.748350 | SWE | 752 |
| 1487 | Switzerland | Europe | 2007 | 81.701 | 7554661 | 37506.419070 | CHE | 756 |
| 1583 | Turkey | Europe | 2007 | 71.777 | 71158647 | 8458.276384 | TUR | 792 |
| 1607 | United Kingdom | Europe | 2007 | 79.425 | 60776238 | 33203.261280 | GBR | 826 |
## Pie Chart
import plotly.express as px
df = px.data.gapminder().query("year == 2007").query("continent == 'Europe'")
df.loc[df['pop'] < 2.e6, 'country'] = 'Other countries' # Represent only large countries
fig = px.pie(df, values='pop', names='country', title='Population of European continent')
fig.show()
## Sunburst chart
import plotly.express as px
df = px.data.gapminder().query("year == 2007")
fig = px.sunburst(df, path=['continent', 'country'], values='pop',
color='lifeExp', hover_data=['iso_alpha'])
fig.show()
## Treemaps
import plotly.express as px
import numpy as np
df = px.data.gapminder().query("year == 2007")
fig = px.treemap(df, path=[px.Constant('govind'), 'continent', 'country'], values='pop',
color='lifeExp', hover_data=['iso_alpha'])
fig.show()
## Histograms.
import plotly.express as px
df = px.data.tips()
fig = px.histogram(df, x="total_bill", y="tip", color="sex", marginal="rug", hover_data=df.columns)
fig.show()
## Box plots.
import plotly.express as px
df = px.data.tips()
fig = px.box(df, x="day", y="tip", color="smoker", notched=True)
fig.show()
px.data.tips()
| total_bill | tip | sex | smoker | day | time | size | |
|---|---|---|---|---|---|---|---|
| 0 | 16.99 | 1.01 | Female | No | Sun | Dinner | 2 |
| 1 | 10.34 | 1.66 | Male | No | Sun | Dinner | 3 |
| 2 | 21.01 | 3.50 | Male | No | Sun | Dinner | 3 |
| 3 | 23.68 | 3.31 | Male | No | Sun | Dinner | 2 |
| 4 | 24.59 | 3.61 | Female | No | Sun | Dinner | 4 |
| ... | ... | ... | ... | ... | ... | ... | ... |
| 239 | 29.03 | 5.92 | Male | No | Sat | Dinner | 3 |
| 240 | 27.18 | 2.00 | Female | Yes | Sat | Dinner | 2 |
| 241 | 22.67 | 2.00 | Male | Yes | Sat | Dinner | 2 |
| 242 | 17.82 | 1.75 | Male | No | Sat | Dinner | 2 |
| 243 | 18.78 | 3.00 | Female | No | Thur | Dinner | 2 |
244 rows × 7 columns
## Violin plots.
import plotly.express as px
df = px.data.tips()
fig = px.violin(df, y="tip", x="smoker", color="sex", box=True, points="all", hover_data=df.columns)
fig.show()
import plotly.express as px
df = px.data.tips()
fig = px.strip(df, x="total_bill", y="time", orientation="h", color="smoker")
fig.show()
## Density Contour Plot
import plotly.express as px
df = px.data.iris()
fig = px.density_contour(df, x="sepal_width", y="sepal_length")
fig.show()
## Density Contour Plot with distribution
import plotly.express as px
df = px.data.iris()
fig = px.density_contour(df, x="sepal_width", y="sepal_length", color="species", marginal_x="rug", marginal_y="histogram")
fig.show()
## Density Heatmap
import plotly.express as px
df = px.data.iris()
fig = px.density_heatmap(df, x="sepal_width", y="sepal_length", marginal_x="rug", marginal_y="histogram")
fig.show()
## Heatmaps and Images.
import plotly.express as px
fig = px.imshow([[1, 40, 30],
[20, 1, 60],
[30, 90, 1]])
fig.show()
## RGB Image show
import plotly.express as px
import numpy as np
img_rgb = np.array([[[255, 0, 0], [0, 255, 0], [0, 0, 255]],
[[0, 255, 0], [0, 0, 255], [255, 0, 0]]
], dtype=np.uint8)
fig = px.imshow(img_rgb)
fig.show()
px.data.election()
| district | Coderre | Bergeron | Joly | total | winner | result | district_id | |
|---|---|---|---|---|---|---|---|---|
| 0 | 101-Bois-de-Liesse | 2481 | 1829 | 3024 | 7334 | Joly | plurality | 101 |
| 1 | 102-Cap-Saint-Jacques | 2525 | 1163 | 2675 | 6363 | Joly | plurality | 102 |
| 2 | 11-Sault-au-Récollet | 3348 | 2770 | 2532 | 8650 | Coderre | plurality | 11 |
| 3 | 111-Mile-End | 1734 | 4782 | 2514 | 9030 | Bergeron | majority | 111 |
| 4 | 112-DeLorimier | 1770 | 5933 | 3044 | 10747 | Bergeron | majority | 112 |
| 5 | 113-Jeanne-Mance | 1455 | 3599 | 2316 | 7370 | Bergeron | plurality | 113 |
| 6 | 12-Saint-Sulpice | 3252 | 2521 | 2543 | 8316 | Coderre | plurality | 12 |
| 7 | 121-La Pointe-aux-Prairies | 5456 | 1760 | 3330 | 10546 | Coderre | majority | 121 |
| 8 | 122-Pointe-aux-Trembles | 4734 | 1879 | 2852 | 9465 | Coderre | majority | 122 |
| 9 | 123-Rivière-des-Prairies | 5737 | 958 | 1656 | 8351 | Coderre | majority | 123 |
| 10 | 13-Ahuntsic | 2979 | 3430 | 2873 | 9282 | Bergeron | plurality | 13 |
| 11 | 131-Saint-Édouard | 1827 | 6408 | 2815 | 11050 | Bergeron | majority | 131 |
| 12 | 132-Étienne-Desmarteau | 2331 | 5748 | 2788 | 10867 | Bergeron | majority | 132 |
| 13 | 133-Vieux-Rosemont | 2670 | 4962 | 3234 | 10866 | Bergeron | plurality | 133 |
| 14 | 134-Marie-Victorin | 3673 | 3155 | 2431 | 9259 | Coderre | plurality | 134 |
| 15 | 14-Bordeaux-Cartierville | 3612 | 1554 | 2081 | 7247 | Coderre | plurality | 14 |
| 16 | 141-Côte-de-Liesse | 4308 | 1320 | 3959 | 9587 | Coderre | plurality | 141 |
| 17 | 142-Norman-McLaren | 4104 | 1459 | 2822 | 8385 | Coderre | plurality | 142 |
| 18 | 151-Saint-Léonard-Est | 3931 | 882 | 1641 | 6454 | Coderre | majority | 151 |
| 19 | 152-Saint-Léonard-Ouest | 5387 | 1184 | 1908 | 8479 | Coderre | majority | 152 |
| 20 | 161-Saint-HenriPetite-BourgognePointe-Saint-Ch... | 2432 | 3368 | 3578 | 9378 | Joly | plurality | 161 |
| 21 | 162-Saint-PaulÉmard | 2566 | 2092 | 2438 | 7096 | Coderre | plurality | 162 |
| 22 | 171-ChamplainL'Île-des-Soeurs | 3347 | 2562 | 3291 | 9200 | Coderre | plurality | 171 |
| 23 | 172-Desmarchais-Crawford | 2476 | 2631 | 2849 | 7956 | Joly | plurality | 172 |
| 24 | 181-Peter-McGill | 1451 | 754 | 1894 | 4099 | Joly | plurality | 181 |
| 25 | 182-Saint-Jacques | 1906 | 2169 | 2282 | 6357 | Joly | plurality | 182 |
| 26 | 183-Sainte-Marie | 1347 | 2827 | 2271 | 6445 | Bergeron | plurality | 183 |
| 27 | 191-Saint-Michel | 3668 | 984 | 1220 | 5872 | Coderre | majority | 191 |
| 28 | 192-François-Perrault | 2878 | 2666 | 2039 | 7583 | Coderre | plurality | 192 |
| 29 | 193-Villeray | 2201 | 5819 | 2782 | 10802 | Bergeron | majority | 193 |
| 30 | 194-Parc-Extension | 2420 | 1793 | 1402 | 5615 | Coderre | plurality | 194 |
| 31 | 21-Ouest | 2184 | 691 | 1076 | 3951 | Coderre | majority | 21 |
| 32 | 22-Est | 1589 | 708 | 1172 | 3469 | Coderre | plurality | 22 |
| 33 | 23-Centre | 2526 | 851 | 1286 | 4663 | Coderre | majority | 23 |
| 34 | 31-Darlington | 1873 | 1182 | 1232 | 4287 | Coderre | plurality | 31 |
| 35 | 32-Côte-des-Neiges | 1644 | 1950 | 1578 | 5172 | Bergeron | plurality | 32 |
| 36 | 33-Snowdon | 1548 | 1503 | 1636 | 4687 | Joly | plurality | 33 |
| 37 | 34-Notre-Dame-de-Grâce | 1773 | 2653 | 3262 | 7688 | Joly | plurality | 34 |
| 38 | 35-Loyola | 2040 | 1437 | 2648 | 6125 | Joly | plurality | 35 |
| 39 | 41-du Canal | 1165 | 832 | 1266 | 3263 | Joly | plurality | 41 |
| 40 | 42-J.-Émery-Provost | 1193 | 653 | 1157 | 3003 | Coderre | plurality | 42 |
| 41 | 43-Fort-Rolland | 1325 | 1205 | 1908 | 4438 | Joly | plurality | 43 |
| 42 | 51-Sault-Saint-Louis | 4201 | 1642 | 3717 | 9560 | Coderre | plurality | 51 |
| 43 | 52-Cecil-P.-Newman | 3536 | 1330 | 2943 | 7809 | Coderre | plurality | 52 |
| 44 | 61-Pierre-Foretier | 631 | 258 | 998 | 1887 | Joly | majority | 61 |
| 45 | 62-Denis-Benjamin-Viger | 595 | 226 | 1068 | 1889 | Joly | majority | 62 |
| 46 | 63-Jacques-Bizard | 518 | 224 | 690 | 1432 | Joly | plurality | 63 |
| 47 | 64-Sainte-Geneviève | 332 | 131 | 326 | 789 | Coderre | plurality | 64 |
| 48 | 71-Tétreaultville | 3694 | 2589 | 3454 | 9737 | Coderre | plurality | 71 |
| 49 | 72-MaisonneuveLongue-Pointe | 2746 | 3250 | 3139 | 9135 | Bergeron | plurality | 72 |
| 50 | 73-Hochelaga | 1546 | 3679 | 2675 | 7900 | Bergeron | plurality | 73 |
| 51 | 74-Louis-Riel | 3509 | 2178 | 2338 | 8025 | Coderre | plurality | 74 |
| 52 | 81-Marie-Clarac | 6591 | 1085 | 1435 | 9111 | Coderre | majority | 81 |
| 53 | 82-Ovide-Clermont | 6229 | 780 | 1051 | 8060 | Coderre | majority | 82 |
| 54 | 91-Claude-Ryan | 996 | 643 | 423 | 2062 | Coderre | plurality | 91 |
| 55 | 92-Joseph-Beaubien | 540 | 833 | 592 | 1965 | Bergeron | plurality | 92 |
| 56 | 93-Robert-Bourassa | 446 | 465 | 419 | 1330 | Bergeron | plurality | 93 |
| 57 | 94-Jeanne-Sauvé | 491 | 698 | 489 | 1678 | Bergeron | plurality | 94 |
## 3D scatter plots
import plotly.express as px
df = px.data.election()
fig = px.scatter_3d(df, x="Joly", y="Coderre", z="Bergeron", color="winner", size="total", hover_name="district",
symbol="result", color_discrete_map = {"Joly": "blue", "Bergeron": "green", "Coderre":"red"})
fig.show()
px.data.carshare()
| centroid_lat | centroid_lon | car_hours | peak_hour | |
|---|---|---|---|---|
| 0 | 45.471549 | -73.588684 | 1772.750000 | 2 |
| 1 | 45.543865 | -73.562456 | 986.333333 | 23 |
| 2 | 45.487640 | -73.642767 | 354.750000 | 20 |
| 3 | 45.522870 | -73.595677 | 560.166667 | 23 |
| 4 | 45.453971 | -73.738946 | 2836.666667 | 19 |
| ... | ... | ... | ... | ... |
| 244 | 45.547171 | -73.556258 | 951.416667 | 3 |
| 245 | 45.546482 | -73.574939 | 795.416667 | 2 |
| 246 | 45.495523 | -73.627725 | 425.750000 | 8 |
| 247 | 45.521199 | -73.581789 | 1044.833333 | 17 |
| 248 | 45.532564 | -73.567535 | 694.916667 | 5 |
249 rows × 4 columns
## Scatter Mapbox
import plotly.express as px
df = px.data.carshare() #Each row represents the availability of car-sharing services near the centroid of a zone in Montreal over a month-long period.
fig = px.scatter_mapbox(df, lat="centroid_lat", lon="centroid_lon", color="peak_hour", size="car_hours",
color_continuous_scale=px.colors.cyclical.IceFire, size_max=15, zoom=10,
mapbox_style="carto-positron")
fig.show()
## Tile map GeoJSON choropleths.
import plotly.express as px
df = px.data.election() #Each feature represents an electoral district in the 2013 Montreal mayoral election.
geojson = px.data.election_geojson()
fig = px.choropleth_mapbox(df, geojson=geojson, color="Bergeron",
locations="district", featureidkey="properties.district",
center={"lat": 45.5517, "lon": -73.7073},
mapbox_style="carto-positron", zoom=9)
fig.show()
px.data.election()
| district | Coderre | Bergeron | Joly | total | winner | result | district_id | |
|---|---|---|---|---|---|---|---|---|
| 0 | 101-Bois-de-Liesse | 2481 | 1829 | 3024 | 7334 | Joly | plurality | 101 |
| 1 | 102-Cap-Saint-Jacques | 2525 | 1163 | 2675 | 6363 | Joly | plurality | 102 |
| 2 | 11-Sault-au-Récollet | 3348 | 2770 | 2532 | 8650 | Coderre | plurality | 11 |
| 3 | 111-Mile-End | 1734 | 4782 | 2514 | 9030 | Bergeron | majority | 111 |
| 4 | 112-DeLorimier | 1770 | 5933 | 3044 | 10747 | Bergeron | majority | 112 |
| 5 | 113-Jeanne-Mance | 1455 | 3599 | 2316 | 7370 | Bergeron | plurality | 113 |
| 6 | 12-Saint-Sulpice | 3252 | 2521 | 2543 | 8316 | Coderre | plurality | 12 |
| 7 | 121-La Pointe-aux-Prairies | 5456 | 1760 | 3330 | 10546 | Coderre | majority | 121 |
| 8 | 122-Pointe-aux-Trembles | 4734 | 1879 | 2852 | 9465 | Coderre | majority | 122 |
| 9 | 123-Rivière-des-Prairies | 5737 | 958 | 1656 | 8351 | Coderre | majority | 123 |
| 10 | 13-Ahuntsic | 2979 | 3430 | 2873 | 9282 | Bergeron | plurality | 13 |
| 11 | 131-Saint-Édouard | 1827 | 6408 | 2815 | 11050 | Bergeron | majority | 131 |
| 12 | 132-Étienne-Desmarteau | 2331 | 5748 | 2788 | 10867 | Bergeron | majority | 132 |
| 13 | 133-Vieux-Rosemont | 2670 | 4962 | 3234 | 10866 | Bergeron | plurality | 133 |
| 14 | 134-Marie-Victorin | 3673 | 3155 | 2431 | 9259 | Coderre | plurality | 134 |
| 15 | 14-Bordeaux-Cartierville | 3612 | 1554 | 2081 | 7247 | Coderre | plurality | 14 |
| 16 | 141-Côte-de-Liesse | 4308 | 1320 | 3959 | 9587 | Coderre | plurality | 141 |
| 17 | 142-Norman-McLaren | 4104 | 1459 | 2822 | 8385 | Coderre | plurality | 142 |
| 18 | 151-Saint-Léonard-Est | 3931 | 882 | 1641 | 6454 | Coderre | majority | 151 |
| 19 | 152-Saint-Léonard-Ouest | 5387 | 1184 | 1908 | 8479 | Coderre | majority | 152 |
| 20 | 161-Saint-HenriPetite-BourgognePointe-Saint-Ch... | 2432 | 3368 | 3578 | 9378 | Joly | plurality | 161 |
| 21 | 162-Saint-PaulÉmard | 2566 | 2092 | 2438 | 7096 | Coderre | plurality | 162 |
| 22 | 171-ChamplainL'Île-des-Soeurs | 3347 | 2562 | 3291 | 9200 | Coderre | plurality | 171 |
| 23 | 172-Desmarchais-Crawford | 2476 | 2631 | 2849 | 7956 | Joly | plurality | 172 |
| 24 | 181-Peter-McGill | 1451 | 754 | 1894 | 4099 | Joly | plurality | 181 |
| 25 | 182-Saint-Jacques | 1906 | 2169 | 2282 | 6357 | Joly | plurality | 182 |
| 26 | 183-Sainte-Marie | 1347 | 2827 | 2271 | 6445 | Bergeron | plurality | 183 |
| 27 | 191-Saint-Michel | 3668 | 984 | 1220 | 5872 | Coderre | majority | 191 |
| 28 | 192-François-Perrault | 2878 | 2666 | 2039 | 7583 | Coderre | plurality | 192 |
| 29 | 193-Villeray | 2201 | 5819 | 2782 | 10802 | Bergeron | majority | 193 |
| 30 | 194-Parc-Extension | 2420 | 1793 | 1402 | 5615 | Coderre | plurality | 194 |
| 31 | 21-Ouest | 2184 | 691 | 1076 | 3951 | Coderre | majority | 21 |
| 32 | 22-Est | 1589 | 708 | 1172 | 3469 | Coderre | plurality | 22 |
| 33 | 23-Centre | 2526 | 851 | 1286 | 4663 | Coderre | majority | 23 |
| 34 | 31-Darlington | 1873 | 1182 | 1232 | 4287 | Coderre | plurality | 31 |
| 35 | 32-Côte-des-Neiges | 1644 | 1950 | 1578 | 5172 | Bergeron | plurality | 32 |
| 36 | 33-Snowdon | 1548 | 1503 | 1636 | 4687 | Joly | plurality | 33 |
| 37 | 34-Notre-Dame-de-Grâce | 1773 | 2653 | 3262 | 7688 | Joly | plurality | 34 |
| 38 | 35-Loyola | 2040 | 1437 | 2648 | 6125 | Joly | plurality | 35 |
| 39 | 41-du Canal | 1165 | 832 | 1266 | 3263 | Joly | plurality | 41 |
| 40 | 42-J.-Émery-Provost | 1193 | 653 | 1157 | 3003 | Coderre | plurality | 42 |
| 41 | 43-Fort-Rolland | 1325 | 1205 | 1908 | 4438 | Joly | plurality | 43 |
| 42 | 51-Sault-Saint-Louis | 4201 | 1642 | 3717 | 9560 | Coderre | plurality | 51 |
| 43 | 52-Cecil-P.-Newman | 3536 | 1330 | 2943 | 7809 | Coderre | plurality | 52 |
| 44 | 61-Pierre-Foretier | 631 | 258 | 998 | 1887 | Joly | majority | 61 |
| 45 | 62-Denis-Benjamin-Viger | 595 | 226 | 1068 | 1889 | Joly | majority | 62 |
| 46 | 63-Jacques-Bizard | 518 | 224 | 690 | 1432 | Joly | plurality | 63 |
| 47 | 64-Sainte-Geneviève | 332 | 131 | 326 | 789 | Coderre | plurality | 64 |
| 48 | 71-Tétreaultville | 3694 | 2589 | 3454 | 9737 | Coderre | plurality | 71 |
| 49 | 72-MaisonneuveLongue-Pointe | 2746 | 3250 | 3139 | 9135 | Bergeron | plurality | 72 |
| 50 | 73-Hochelaga | 1546 | 3679 | 2675 | 7900 | Bergeron | plurality | 73 |
| 51 | 74-Louis-Riel | 3509 | 2178 | 2338 | 8025 | Coderre | plurality | 74 |
| 52 | 81-Marie-Clarac | 6591 | 1085 | 1435 | 9111 | Coderre | majority | 81 |
| 53 | 82-Ovide-Clermont | 6229 | 780 | 1051 | 8060 | Coderre | majority | 82 |
| 54 | 91-Claude-Ryan | 996 | 643 | 423 | 2062 | Coderre | plurality | 91 |
| 55 | 92-Joseph-Beaubien | 540 | 833 | 592 | 1965 | Bergeron | plurality | 92 |
| 56 | 93-Robert-Bourassa | 446 | 465 | 419 | 1330 | Bergeron | plurality | 93 |
| 57 | 94-Jeanne-Sauvé | 491 | 698 | 489 | 1678 | Bergeron | plurality | 94 |
px.data.election_geojson()
{'type': 'FeatureCollection',
'features': [{'type': 'Feature',
'geometry': {'type': 'MultiPolygon',
'coordinates': [[[[-73.6363215300962, 45.5759177646435],
[-73.6362833815582, 45.5758266113331],
[-73.6446417578686, 45.5658132919643],
[-73.6453511352974, 45.5647725775888],
[-73.648867564748, 45.5586898267402],
[-73.6513170845065, 45.5545659435652],
[-73.6515658357324, 45.5554439857955],
[-73.6660837831645, 45.5596724837829],
[-73.6706609041685, 45.5610978251999],
[-73.6676019919116, 45.5632340862888],
[-73.6645385824068, 45.5642716484367],
[-73.663663123697, 45.5654269638586],
[-73.663336397858, 45.5666288247853],
[-73.6637764768649, 45.5678900619231],
[-73.6625073244826, 45.5688479494114],
[-73.6624620526633, 45.5708304456346],
[-73.6620201425015, 45.5713925326191],
[-73.6616100197742, 45.5737924780218],
[-73.6612199500215, 45.5747171555678],
[-73.6625087613399, 45.5748980132699],
[-73.6639172423219, 45.5730041908097],
[-73.6654358660443, 45.5729040009532],
[-73.6661069174428, 45.5737928224235],
[-73.6657870687343, 45.574385118162],
[-73.6636711124334, 45.577018676761],
[-73.6620928771361, 45.578161887933],
[-73.6611738698168, 45.5798517041392],
[-73.660404649744, 45.5806752214364],
[-73.659760079306, 45.5804007503503],
[-73.6604711314507, 45.5793767269523],
[-73.660479658497, 45.5787710701802],
[-73.6613549575147, 45.5780184952852],
[-73.6617871566128, 45.5758213640561],
[-73.6607445476436, 45.5764832852254],
[-73.6608243059909, 45.5774702934068],
[-73.6592236423267, 45.5793785624903],
[-73.6570262958283, 45.5810509513563],
[-73.6552694168748, 45.5819333817794],
[-73.6543058972308, 45.5836262624158],
[-73.652557313063, 45.5826892716542],
[-73.6363215300962, 45.5759177646435]]],
[[[-73.6561004885273, 45.5841347974261],
[-73.656376117147, 45.5845383929424],
[-73.6559939844354, 45.585868003125],
[-73.6552168328229, 45.5855392416017],
[-73.6561004885273, 45.5841347974261]]]]},
'properties': {'district': '11-Sault-au-Récollet'},
'id': '11'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.6217484540132, 45.5544783077209],
[-73.6235005117779, 45.5536358848324],
[-73.6278096771011, 45.5513024018691],
[-73.6301686544477, 45.5503989164938],
[-73.6325600663803, 45.5499795021129],
[-73.6342899238824, 45.5494628161417],
[-73.6363671046978, 45.548169415833],
[-73.6398673671325, 45.5441488267699],
[-73.6407295659042, 45.5429686686779],
[-73.6485543103777, 45.5308320827376],
[-73.6510270564502, 45.5263874543882],
[-73.6555330494037, 45.5277342274232],
[-73.6698852350516, 45.5318835785726],
[-73.6726124365382, 45.5322997327559],
[-73.6747555535799, 45.5323081056009],
[-73.6764129283619, 45.5321264506516],
[-73.683124268159, 45.5305991300384],
[-73.6807721370907, 45.534331320177],
[-73.6785046215606, 45.5379069417581],
[-73.6752852955733, 45.5369404343695],
[-73.6740837310465, 45.5378868187786],
[-73.6687347480061, 45.5363337408676],
[-73.667891862525, 45.5387409623539],
[-73.664945183105, 45.5382590909533],
[-73.6646235398403, 45.5394847807605],
[-73.662249203322, 45.543633408253],
[-73.6616100449503, 45.5441416421638],
[-73.6604302515405, 45.5460790656787],
[-73.6568659704249, 45.5450525873044],
[-73.6513170845065, 45.5545659435652],
[-73.648867564748, 45.5586898267402],
[-73.6453511352974, 45.5647725775888],
[-73.6240413737876, 45.5555253903511],
[-73.6217484540132, 45.5544783077209]]]},
'properties': {'district': '12-Saint-Sulpice'},
'id': '12'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.6513170845065, 45.5545659435652],
[-73.6568659704249, 45.5450525873044],
[-73.6604302515405, 45.5460790656787],
[-73.6616100449503, 45.5441416421638],
[-73.662249203322, 45.543633408253],
[-73.6646235398403, 45.5394847807605],
[-73.664945183105, 45.5382590909533],
[-73.667891862525, 45.5387409623539],
[-73.6687347480061, 45.5363337408676],
[-73.6740837310465, 45.5378868187786],
[-73.6752852955733, 45.5369404343695],
[-73.6785046215606, 45.5379069417581],
[-73.6807721370907, 45.534331320177],
[-73.6920199187781, 45.5394683031028],
[-73.702520410412, 45.5431766227664],
[-73.7042065154565, 45.5438906316964],
[-73.7043014929187, 45.5441905861876],
[-73.7027027602765, 45.5451406840713],
[-73.7023335988111, 45.5457621950639],
[-73.7012226911876, 45.5459702396396],
[-73.7004635154173, 45.5466167282154],
[-73.6996123824321, 45.5464852570484],
[-73.6992033294858, 45.5475781625301],
[-73.6968595536907, 45.5481581755357],
[-73.6949311086011, 45.5474604427764],
[-73.6924688517172, 45.5472280284581],
[-73.6891281157722, 45.5477334249253],
[-73.6879273316976, 45.5481318231022],
[-73.6865595013798, 45.5491308196528],
[-73.6852748086046, 45.5488162600605],
[-73.6827845213391, 45.5489146412483],
[-73.6801283681886, 45.549462773374],
[-73.6791182211476, 45.5500801562043],
[-73.6772981030339, 45.5516675115113],
[-73.6765545558035, 45.552766523393],
[-73.6744642269172, 45.5548591969672],
[-73.6730096784532, 45.5582339830541],
[-73.6706609041685, 45.5610978251999],
[-73.6660837831645, 45.5596724837829],
[-73.6515658357324, 45.5554439857955],
[-73.6513170845065, 45.5545659435652]]]},
'properties': {'district': '13-Ahuntsic'},
'id': '13'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.7043014929187, 45.5441905861876],
[-73.7042065154565, 45.5438906316964],
[-73.702520410412, 45.5431766227664],
[-73.6920199187781, 45.5394683031028],
[-73.6807721370907, 45.534331320177],
[-73.683124268159, 45.5305991300384],
[-73.685195685208, 45.5301022578388],
[-73.6870922504792, 45.5286619976995],
[-73.6897803429098, 45.5288476157777],
[-73.6939612003867, 45.528347826243],
[-73.6963296087078, 45.5276805484038],
[-73.7091218538247, 45.5230954877394],
[-73.7112612170074, 45.5243023856458],
[-73.7131122096208, 45.5251637887575],
[-73.7145584630039, 45.5239315629596],
[-73.7172924358234, 45.5256928911099],
[-73.7185119695016, 45.5247508136954],
[-73.7217031155859, 45.5267447688191],
[-73.7280602953464, 45.5213554616816],
[-73.7317546325275, 45.5236815365784],
[-73.7358987648866, 45.5207291683311],
[-73.7285097856203, 45.5160943522463],
[-73.7350991221023, 45.5137867482303],
[-73.7550630650544, 45.5065238038199],
[-73.7551669017747, 45.5064862077527],
[-73.7612752776246, 45.5104175090183],
[-73.7638683329059, 45.5120860463668],
[-73.762390301954, 45.5126791739444],
[-73.7600609683013, 45.5141288858482],
[-73.7568442082942, 45.5171884494623],
[-73.7548593171474, 45.5180889539846],
[-73.752606980088, 45.5185523798859],
[-73.749151955166, 45.519018390863],
[-73.7452110015187, 45.5215286261207],
[-73.7437662661847, 45.5231373686573],
[-73.7411211602605, 45.526837900694],
[-73.7394306858002, 45.5285277381045],
[-73.7360589393138, 45.5302671129156],
[-73.7343347000828, 45.5309824138834],
[-73.7311072638005, 45.5320095049916],
[-73.7283844986554, 45.533203827821],
[-73.7249729419404, 45.5359178137401],
[-73.7231098233772, 45.5369689627545],
[-73.7202103870331, 45.5381794076214],
[-73.7181375140605, 45.5387109207903],
[-73.7158043157039, 45.5388996570908],
[-73.7135388429561, 45.5396848689224],
[-73.7111454931799, 45.541340948266],
[-73.7091038651233, 45.5430898357363],
[-73.7078456046825, 45.5423008892929],
[-73.7069875096913, 45.5436077713277],
[-73.705614345008, 45.5441267025504],
[-73.7043014929187, 45.5441905861876]]]},
'properties': {'district': '14-Bordeaux-Cartierville'},
'id': '14'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5576871015794, 45.5932166140624],
[-73.5694206600629, 45.5971486400825],
[-73.5696609688417, 45.5965806032278],
[-73.5726733802096, 45.5977479911912],
[-73.5745938220503, 45.5986717630315],
[-73.576232424293, 45.5992577290381],
[-73.5771288919308, 45.599852413767],
[-73.5889961999073, 45.6050220349527],
[-73.5971103983983, 45.6085989887758],
[-73.6013378366857, 45.6104025414741],
[-73.6028907661658, 45.6112216102358],
[-73.601559767966, 45.6118073578371],
[-73.6023660828945, 45.6125718329314],
[-73.5984976040034, 45.6140840514745],
[-73.5954830428467, 45.6158123480652],
[-73.5740068269183, 45.6304929149516],
[-73.5683379250343, 45.6341956640577],
[-73.5514095863784, 45.6269444197056],
[-73.5481773494253, 45.6255197854529],
[-73.5585223912755, 45.6137280036474],
[-73.5640615699407, 45.6074316710882],
[-73.564986439275, 45.60561620283],
[-73.5662995431109, 45.6039974029119],
[-73.5631517029922, 45.6031634368599],
[-73.5614050931716, 45.6025489377902],
[-73.5567925816714, 45.6005393547562],
[-73.5589887922886, 45.5979945383903],
[-73.5595164040348, 45.5961661000645],
[-73.5564557704867, 45.5951543577536],
[-73.5576871015794, 45.5932166140624]]]},
'properties': {'district': '21-Ouest'},
'id': '21'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5452799498143, 45.5959627917351],
[-73.5491007054645, 45.5975302159963],
[-73.5479841638628, 45.5989434662401],
[-73.5468145864499, 45.6013644519429],
[-73.5461968110206, 45.6046211322422],
[-73.549913736884, 45.605150517886],
[-73.5533688744189, 45.605412630486],
[-73.5524302953106, 45.6080081462088],
[-73.5507759763854, 45.6103339985918],
[-73.5585223912755, 45.6137280036474],
[-73.5481773494253, 45.6255197854529],
[-73.5358870172169, 45.620207093019],
[-73.5374747721378, 45.6166252950092],
[-73.5375256945614, 45.6160673327401],
[-73.5381703589619, 45.6139517855176],
[-73.5437218072693, 45.6149096422408],
[-73.5452777806501, 45.6141657083913],
[-73.5462767505068, 45.6127238289344],
[-73.5444977198785, 45.6121760838565],
[-73.5453373826653, 45.6107633861198],
[-73.5441363974969, 45.6102716461918],
[-73.5412098839782, 45.6095033241271],
[-73.5416434070878, 45.6081797015109],
[-73.540900931842, 45.6078533012629],
[-73.5416213388458, 45.606939681157],
[-73.5375401492111, 45.6052359766051],
[-73.5365038947396, 45.6026457300995],
[-73.5365958888719, 45.602162446611],
[-73.5394321608651, 45.6030910243993],
[-73.5421763850909, 45.6042454438226],
[-73.5429289535666, 45.6032316351511],
[-73.539729971205, 45.6018186221009],
[-73.5407418924341, 45.6006998521118],
[-73.5447576674512, 45.6019410417126],
[-73.5451108447268, 45.6000061818095],
[-73.5445859643042, 45.5999308464328],
[-73.5442050076359, 45.5981948225546],
[-73.5438572127564, 45.5980784963673],
[-73.5452799498143, 45.5959627917351]]]},
'properties': {'district': '22-Est'},
'id': '22'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5576871015794, 45.5932166140624],
[-73.5564557704867, 45.5951543577536],
[-73.5595164040348, 45.5961661000645],
[-73.5589887922886, 45.5979945383903],
[-73.5567925816714, 45.6005393547562],
[-73.5614050931716, 45.6025489377902],
[-73.5631517029922, 45.6031634368599],
[-73.5662995431109, 45.6039974029119],
[-73.564986439275, 45.60561620283],
[-73.5640615699407, 45.6074316710882],
[-73.5585223912755, 45.6137280036474],
[-73.5507759763854, 45.6103339985918],
[-73.5524302953106, 45.6080081462088],
[-73.5533688744189, 45.605412630486],
[-73.549913736884, 45.605150517886],
[-73.5461968110206, 45.6046211322422],
[-73.5468145864499, 45.6013644519429],
[-73.5479841638628, 45.5989434662401],
[-73.5491007054645, 45.5975302159963],
[-73.5452799498143, 45.5959627917351],
[-73.5455045323429, 45.5956272275911],
[-73.545930102715, 45.5949937733284],
[-73.5473484500099, 45.5955355370728],
[-73.5481396292151, 45.5946360429193],
[-73.5465394629102, 45.5940712033384],
[-73.5489394765731, 45.5903029802044],
[-73.5576871015794, 45.5932166140624]]]},
'properties': {'district': '23-Centre'},
'id': '23'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.6207592308166, 45.5138993727882],
[-73.6236560898078, 45.5106541632808],
[-73.624384898555, 45.5091582170891],
[-73.6260875230251, 45.507277208983],
[-73.6279506225702, 45.5061120243158],
[-73.628749836468, 45.5048079525531],
[-73.6304494685866, 45.5028490467289],
[-73.6256440443835, 45.500662130816],
[-73.6331323407225, 45.49234917306],
[-73.6480439724158, 45.4990451424615],
[-73.6458072174417, 45.5016289991394],
[-73.6422399591459, 45.5054987858353],
[-73.6423036889254, 45.5062221151428],
[-73.6415508188144, 45.5069829054595],
[-73.6416660769228, 45.5076101030023],
[-73.6385805807369, 45.5112159439382],
[-73.6365911851412, 45.5146566965285],
[-73.6357295158589, 45.5143963845137],
[-73.6346269691423, 45.5156528191911],
[-73.6289040380069, 45.5140823858644],
[-73.6267223236567, 45.5165801475772],
[-73.6207592308166, 45.5138993727882]]]},
'properties': {'district': '31-Darlington'},
'id': '31'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5956108742759, 45.504064067218],
[-73.5941401789655, 45.5033436344744],
[-73.594737745289, 45.5028667176493],
[-73.5977240363362, 45.5016310280474],
[-73.5997960499359, 45.5001439911523],
[-73.6009279740317, 45.4988800346583],
[-73.6033750499038, 45.4967309718248],
[-73.6044775189475, 45.4952226776326],
[-73.6068399722065, 45.4952769144878],
[-73.6083680626652, 45.493592693099],
[-73.6093606035265, 45.4939788081012],
[-73.6115925457235, 45.4916920833656],
[-73.6147351668377, 45.4930299583055],
[-73.6184160919695, 45.4889467204633],
[-73.618423454854, 45.4881800607925],
[-73.6153515138627, 45.4867956883177],
[-73.6169038962737, 45.4851011880198],
[-73.6331323407225, 45.49234917306],
[-73.6256440443835, 45.500662130816],
[-73.6304494685866, 45.5028490467289],
[-73.628749836468, 45.5048079525531],
[-73.6279506225702, 45.5061120243158],
[-73.6260875230251, 45.507277208983],
[-73.624384898555, 45.5091582170891],
[-73.6236560898078, 45.5106541632808],
[-73.6207592308166, 45.5138993727882],
[-73.6176645335398, 45.5125000231349],
[-73.617959519301, 45.5121686212918],
[-73.61888001694, 45.5111346532789],
[-73.6169256431203, 45.5102737338336],
[-73.6178928803835, 45.5091750557282],
[-73.6160933747766, 45.5082725969653],
[-73.6189454361275, 45.5051234940594],
[-73.6182356279483, 45.504722156916],
[-73.6130513861854, 45.5104478685544],
[-73.6063535452531, 45.5074911306599],
[-73.6061344132343, 45.5068772235294],
[-73.6035337540631, 45.5057001623398],
[-73.6024762927983, 45.5068574351344],
[-73.5993805679324, 45.5053898653966],
[-73.5987846893921, 45.5056180649425],
[-73.5956108742759, 45.504064067218]]]},
'properties': {'district': '32-Côte-des-Neiges'},
'id': '32'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.6458072174417, 45.5016289991394],
[-73.6480439724158, 45.4990451424615],
[-73.6331323407225, 45.49234917306],
[-73.6169038962737, 45.4851011880198],
[-73.6171481421592, 45.4848346166979],
[-73.6143642141962, 45.4835868912093],
[-73.6159143530659, 45.4828328944331],
[-73.6178740199084, 45.4828487105026],
[-73.6188871149392, 45.4826094451865],
[-73.6212759199926, 45.4802684345737],
[-73.6225662166532, 45.4809098124242],
[-73.6236079242847, 45.479859834089],
[-73.6247644644914, 45.4792722536745],
[-73.6274376104247, 45.4787022686984],
[-73.6296262215988, 45.478422071886],
[-73.6309839979771, 45.4790336481084],
[-73.6303804074798, 45.4796761714723],
[-73.6511475576679, 45.4890232837666],
[-73.6486185977978, 45.4918874029923],
[-73.6505027283703, 45.4926843456098],
[-73.6558244313911, 45.4867907549359],
[-73.6554964724779, 45.4865593791057],
[-73.6559518311015, 45.4851214751334],
[-73.6560231568666, 45.4789400952457],
[-73.6611067166692, 45.4811529055447],
[-73.6618618884249, 45.4803203895973],
[-73.6695855765435, 45.483802365291],
[-73.6746342471328, 45.4819683440264],
[-73.6763145414839, 45.4831298265322],
[-73.6776271543493, 45.4823345919293],
[-73.677264286648, 45.4836591822082],
[-73.6751680903633, 45.4912833590877],
[-73.6678730495106, 45.4869534898132],
[-73.6660964808822, 45.4866186123515],
[-73.665349200462, 45.4870183659149],
[-73.6562276688947, 45.49432722353],
[-73.6637510731136, 45.4992450684359],
[-73.6617471598017, 45.4992191258018],
[-73.6623623016746, 45.5022066512214],
[-73.6605369493135, 45.5024306141327],
[-73.6600841825714, 45.50331916613],
[-73.659999506549, 45.5047080114556],
[-73.6566453499119, 45.5037588241059],
[-73.6516126661051, 45.504311872331],
[-73.6458072174417, 45.5016289991394]]]},
'properties': {'district': '33-Snowdon'},
'id': '33'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.6143642141962, 45.4835868912093],
[-73.6123997707291, 45.4826898974257],
[-73.6143764334436, 45.4805885224868],
[-73.6054346259738, 45.4765925587108],
[-73.605024536716, 45.4770080719998],
[-73.5985471562789, 45.4740708829885],
[-73.5951347718664, 45.4764466331536],
[-73.5966486659517, 45.4732210790839],
[-73.5995923966142, 45.4714885118876],
[-73.6015380888098, 45.4698449656495],
[-73.6025897276388, 45.4690525247808],
[-73.6031619796725, 45.4691032161751],
[-73.6056266168094, 45.4676031109374],
[-73.6058459619009, 45.4672881102352],
[-73.6116004847967, 45.4647691120724],
[-73.6121904900053, 45.4648542087469],
[-73.6157015928197, 45.4632907897894],
[-73.6167538282606, 45.4637150194085],
[-73.6260868871444, 45.4678594502274],
[-73.626514031426, 45.4682540051731],
[-73.6317531402478, 45.4705324186308],
[-73.6328791824832, 45.4692477650227],
[-73.6375349663401, 45.4712784001916],
[-73.636638362928, 45.4717833758261],
[-73.6429334550997, 45.4745543212637],
[-73.6397624769414, 45.4766952953752],
[-73.6393702983563, 45.4768105158646],
[-73.6354876412699, 45.4768957315274],
[-73.6324931664858, 45.477871983287],
[-73.6296262215988, 45.478422071886],
[-73.6274376104247, 45.4787022686984],
[-73.6247644644914, 45.4792722536745],
[-73.6236079242847, 45.479859834089],
[-73.6225662166532, 45.4809098124242],
[-73.6212759199926, 45.4802684345737],
[-73.6188871149392, 45.4826094451865],
[-73.6178740199084, 45.4828487105026],
[-73.6159143530659, 45.4828328944331],
[-73.6143642141962, 45.4835868912093]]]},
'properties': {'district': '34-Notre-Dame-de-Grâce'},
'id': '34'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.6157015928197, 45.4632907897894],
[-73.6182352042185, 45.4622268121902],
[-73.6200562870233, 45.4616683026575],
[-73.6243236842049, 45.4586553508057],
[-73.6262003043123, 45.4574918787775],
[-73.6314544395632, 45.4527593013115],
[-73.6350181512615, 45.4509158064615],
[-73.6351722497066, 45.4507225431116],
[-73.6579831562151, 45.4595353374805],
[-73.6571683135528, 45.4601081011059],
[-73.6581848068946, 45.4614565130998],
[-73.6556103303451, 45.4629114310011],
[-73.652126146378, 45.4676895103383],
[-73.650271326417, 45.4688055451965],
[-73.6491060800072, 45.4705082201931],
[-73.6456903840605, 45.4732294857318],
[-73.6429334550997, 45.4745543212637],
[-73.636638362928, 45.4717833758261],
[-73.6375349663401, 45.4712784001916],
[-73.6328791824832, 45.4692477650227],
[-73.6317531402478, 45.4705324186308],
[-73.626514031426, 45.4682540051731],
[-73.6260868871444, 45.4678594502274],
[-73.6167538282606, 45.4637150194085],
[-73.6157015928197, 45.4632907897894]]]},
'properties': {'district': '35-Loyola'},
'id': '35'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.6827804258142, 45.4635658825978],
[-73.680902143784, 45.4623754221733],
[-73.6819797751037, 45.4611465117243],
[-73.6828103840958, 45.4609562889736],
[-73.6837901612144, 45.4594789107516],
[-73.6850645006026, 45.4581450364168],
[-73.6872613190858, 45.45743059602],
[-73.6874478222607, 45.4558195821286],
[-73.6872205285223, 45.4552707229765],
[-73.6763900162006, 45.4523637929963],
[-73.67377108286, 45.4530336717393],
[-73.6720573706002, 45.4528472783153],
[-73.6708095323057, 45.454567942777],
[-73.6685657847746, 45.4567309452231],
[-73.6569820780073, 45.4523202088578],
[-73.6448369147901, 45.4475941198865],
[-73.6433550395347, 45.4477889354918],
[-73.6432919538684, 45.4483609262331],
[-73.6389029083366, 45.4466926413334],
[-73.6367835977829, 45.447838031415],
[-73.6320301276656, 45.4495010416609],
[-73.6290926270452, 45.4483946176344],
[-73.6320762130349, 45.4466558317026],
[-73.6351699979365, 45.445393422083],
[-73.6392793914912, 45.4438396460105],
[-73.6470945537851, 45.4407073290916],
[-73.648051977364, 45.4402561224796],
[-73.6537698617598, 45.4370900482024],
[-73.6593235959903, 45.4348597630844],
[-73.6621186235209, 45.433443013701],
[-73.6659361085031, 45.4320787105657],
[-73.665989308902, 45.4284342302665],
[-73.6689564175307, 45.4291767414944],
[-73.6731193300976, 45.4280636694712],
[-73.6759423999609, 45.4276813808521],
[-73.6833563260685, 45.4282185950861],
[-73.6865003978824, 45.4283124979178],
[-73.6878687931234, 45.4286162358336],
[-73.6882161207604, 45.4292815314123],
[-73.6856210014114, 45.4290337944536],
[-73.6824907873074, 45.4293268197374],
[-73.6802412950549, 45.4292313975545],
[-73.675637946869, 45.4284197115606],
[-73.6730699666729, 45.4286396172162],
[-73.6691630663163, 45.429896298712],
[-73.6694459537283, 45.4304807516148],
[-73.6730208497195, 45.4292965595349],
[-73.6750647146261, 45.4289965544438],
[-73.6767010508474, 45.4291739328909],
[-73.6788386194388, 45.4302144484015],
[-73.6788136864397, 45.4304304732339],
[-73.6733659453582, 45.4293230346261],
[-73.6691401095123, 45.4307511873639],
[-73.6696391042462, 45.4309484342688],
[-73.6714905342855, 45.4303967061942],
[-73.6716716548405, 45.4310983881409],
[-73.6737798875814, 45.4309332101671],
[-73.6775256263951, 45.431305335836],
[-73.6792911320404, 45.4318695414462],
[-73.6820917599341, 45.4323959865103],
[-73.6847244511365, 45.4323557615008],
[-73.6843819981847, 45.4331481730083],
[-73.6862880355843, 45.433675955614],
[-73.6893786382238, 45.43297800821],
[-73.6919766084407, 45.4328477403871],
[-73.6920222789549, 45.4344181753399],
[-73.6924064617963, 45.4372834135916],
[-73.6919192684033, 45.4375875837079],
[-73.6922359492324, 45.4397539275822],
[-73.6790976648257, 45.4399597709378],
[-73.6718763889968, 45.4401679518281],
[-73.6702870397047, 45.440019142569],
[-73.6635037895282, 45.4400929494508],
[-73.6629212228917, 45.4401596573971],
[-73.6629008949467, 45.4422188385912],
[-73.6635315763833, 45.4422179374171],
[-73.6636442247504, 45.4445171206371],
[-73.6650313754737, 45.4449769741284],
[-73.6688238611265, 45.4465533440431],
[-73.6703899048248, 45.4470018886664],
[-73.6723760891366, 45.4472832888363],
[-73.6862003751106, 45.4475701793018],
[-73.6929749468618, 45.4479566183894],
[-73.6931235366321, 45.44814625489],
[-73.6960704968967, 45.4482114291558],
[-73.6970275555854, 45.4488217409105],
[-73.6970986158494, 45.4534198522438],
[-73.6970604739367, 45.4567907245283],
[-73.6967667127171, 45.4587187165095],
[-73.6956922188653, 45.4626538256577],
[-73.6956163827684, 45.4640262681568],
[-73.69619836572, 45.4654974169452],
[-73.6947785817616, 45.4645178045181],
[-73.6933043566279, 45.4703396575946],
[-73.6827804258142, 45.4635658825978]]]},
'properties': {'district': '41-du Canal'},
'id': '41'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.6922359492324, 45.4397539275822],
[-73.6930646838521, 45.4455152024534],
[-73.6929749468618, 45.4479566183894],
[-73.6862003751106, 45.4475701793018],
[-73.6723760891366, 45.4472832888363],
[-73.6703899048248, 45.4470018886664],
[-73.6688238611265, 45.4465533440431],
[-73.6650313754737, 45.4449769741284],
[-73.6636442247504, 45.4445171206371],
[-73.6635315763833, 45.4422179374171],
[-73.6629008949467, 45.4422188385912],
[-73.6629212228917, 45.4401596573971],
[-73.6635037895282, 45.4400929494508],
[-73.6702870397047, 45.440019142569],
[-73.6718763889968, 45.4401679518281],
[-73.6790976648257, 45.4399597709378],
[-73.6922359492324, 45.4397539275822]]]},
'properties': {'district': '42-J.-Émery-Provost'},
'id': '42'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.6929749468618, 45.4479566183894],
[-73.6930646838521, 45.4455152024534],
[-73.6922359492324, 45.4397539275822],
[-73.6919192684033, 45.4375875837079],
[-73.6924064617963, 45.4372834135916],
[-73.6920222789549, 45.4344181753399],
[-73.6919766084407, 45.4328477403871],
[-73.6932876958108, 45.4324224970616],
[-73.694195347338, 45.4324839527568],
[-73.6949136010573, 45.4332296803625],
[-73.6988288457718, 45.4344466726102],
[-73.7010791173413, 45.434694716853],
[-73.7030235835285, 45.4351501569008],
[-73.7052464981121, 45.4348762919984],
[-73.7084847193563, 45.4361211648559],
[-73.7108619082078, 45.4360808035114],
[-73.7131770697603, 45.436535476583],
[-73.7141004237697, 45.4373526055584],
[-73.7197027055463, 45.4383497204873],
[-73.7205977591364, 45.438420079974],
[-73.7206259030039, 45.439094891288],
[-73.7192721714824, 45.4393943883616],
[-73.7222362640027, 45.4487922160595],
[-73.7206936272739, 45.4487451257208],
[-73.722831053433, 45.4557427179281],
[-73.7245717150603, 45.4610335488204],
[-73.7198081628308, 45.4644866016957],
[-73.7170519619499, 45.4666015017259],
[-73.7125173690129, 45.4699350201585],
[-73.7080097103994, 45.47334246671],
[-73.7047665432935, 45.4712980390786],
[-73.69619836572, 45.4654974169452],
[-73.6956163827684, 45.4640262681568],
[-73.6956922188653, 45.4626538256577],
[-73.6967667127171, 45.4587187165095],
[-73.6970604739367, 45.4567907245283],
[-73.6970986158494, 45.4534198522438],
[-73.6970275555854, 45.4488217409105],
[-73.6960704968967, 45.4482114291558],
[-73.6931235366321, 45.44814625489],
[-73.6929749468618, 45.4479566183894]]]},
'properties': {'district': '43-Fort-Rolland'},
'id': '43'},
{'type': 'Feature',
'geometry': {'type': 'MultiPolygon',
'coordinates': [[[[-73.5878943026224, 45.4214667320274],
[-73.5863736733671, 45.4214319841574],
[-73.5869474028608, 45.4206395990966],
[-73.5878943026224, 45.4214667320274]]],
[[[-73.5725281473542, 45.4260939579768],
[-73.5704318906483, 45.4257263831213],
[-73.5705580062435, 45.4244124795508],
[-73.5739539624556, 45.4219626672329],
[-73.5766876209735, 45.4212859978906],
[-73.5793575905544, 45.4208612013169],
[-73.5824241611882, 45.4207510361274],
[-73.5840593827098, 45.4204618626093],
[-73.585056506724, 45.4207940136185],
[-73.586554348269, 45.4226195923359],
[-73.5860576024637, 45.4236638110559],
[-73.584295514885, 45.4245289791408],
[-73.5827488367791, 45.424251218775],
[-73.5809343733788, 45.424360511388],
[-73.5784175573386, 45.4248212373305],
[-73.5770508918231, 45.425290048099],
[-73.5731288926102, 45.4262015674713],
[-73.5725281473542, 45.4260939579768]]],
[[[-73.5765170514597, 45.4274230889043],
[-73.5749707241727, 45.4273611190412],
[-73.5723756663881, 45.4267869197677],
[-73.5752500087582, 45.4259752044009],
[-73.5797854469441, 45.4251621784139],
[-73.5803981192377, 45.4246848695548],
[-73.5816888803182, 45.4247468599426],
[-73.5837470045383, 45.4252493371248],
[-73.5811925680258, 45.4261690319939],
[-73.5773858946539, 45.42731451108],
[-73.5765170514597, 45.4274230889043]]],
[[[-73.5993656298056, 45.437522488597],
[-73.5837871545249, 45.4350036826887],
[-73.5864937818087, 45.4330669729378],
[-73.5889455796285, 45.4317602654679],
[-73.5892899771004, 45.4312921174991],
[-73.5917282376663, 45.4295893857394],
[-73.5930673492969, 45.4278875931486],
[-73.5941659028554, 45.4276167102135],
[-73.5970103055467, 45.4244378040521],
[-73.6024582557665, 45.4197537949939],
[-73.6050240641787, 45.418374641288],
[-73.6071441080738, 45.4178597046428],
[-73.6089187571527, 45.4171291621745],
[-73.6111012955212, 45.4159032271],
[-73.6144997511617, 45.4158098763183],
[-73.6157904203163, 45.4159075684946],
[-73.6190093657475, 45.4154992857685],
[-73.6211671693205, 45.4148130602082],
[-73.6256397226365, 45.4151411168221],
[-73.6290762426954, 45.4149482971955],
[-73.6295864341622, 45.4145878316083],
[-73.6326788478802, 45.4147641808428],
[-73.6324382282295, 45.4157003113135],
[-73.6338310649383, 45.4157616841636],
[-73.6373466145775, 45.4154299316521],
[-73.6378211847585, 45.4157853047214],
[-73.6349821404871, 45.4216213986168],
[-73.630914321986, 45.4207058504903],
[-73.629580513036, 45.4205264796284],
[-73.6269794842437, 45.4219064890514],
[-73.6221765288238, 45.4233556809216],
[-73.6235576102796, 45.4251452650735],
[-73.625860660556, 45.4262630893683],
[-73.6213932515199, 45.4290799524068],
[-73.6189096270924, 45.431198716026],
[-73.6153394945845, 45.4349173246406],
[-73.6147722148194, 45.4363801178349],
[-73.6185038157741, 45.4371719975162],
[-73.6203669519898, 45.4381561591494],
[-73.6292793360419, 45.4422437520764],
[-73.6304212122284, 45.4412800353944],
[-73.6319594346838, 45.4420660970196],
[-73.6341339482992, 45.4434436213567],
[-73.6334152486196, 45.4438343169323],
[-73.6348120456809, 45.444546590121],
[-73.6351699979365, 45.445393422083],
[-73.6320762130349, 45.4466558317026],
[-73.6290926270452, 45.4483946176344],
[-73.6288149375869, 45.4482900651074],
[-73.6269986444794, 45.4501430927141],
[-73.6255515041789, 45.4513172221793],
[-73.622324477466, 45.4535901866228],
[-73.6201147014597, 45.4548257159799],
[-73.6136079881888, 45.4576954341346],
[-73.6068239912076, 45.4545470690524],
[-73.6048092799479, 45.4489130784869],
[-73.6052123848584, 45.4479821667775],
[-73.6094089858961, 45.4442773154325],
[-73.6104503124607, 45.4429793199455],
[-73.6118008558715, 45.4394499728596],
[-73.5996082895714, 45.4375187309259],
[-73.5993656298056, 45.437522488597]]]]},
'properties': {'district': '51-Sault-Saint-Louis'},
'id': '51'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.6373466145775, 45.4154299316521],
[-73.6398482479311, 45.4154574940498],
[-73.6413054445293, 45.4157165943723],
[-73.6441055865314, 45.4165049565242],
[-73.6469598857207, 45.418436018764],
[-73.6496982979192, 45.4199531866296],
[-73.6528057037257, 45.4208669233735],
[-73.6563386875677, 45.4231117299686],
[-73.6574132128538, 45.4235151379827],
[-73.6590899773487, 45.4245026614551],
[-73.6597563681528, 45.4251856881017],
[-73.6622132461692, 45.4263249714976],
[-73.6626617007921, 45.4267473070838],
[-73.6639788872218, 45.4270423138518],
[-73.665989308902, 45.4284342302665],
[-73.6659361085031, 45.4320787105657],
[-73.6621186235209, 45.433443013701],
[-73.6593235959903, 45.4348597630844],
[-73.6537698617598, 45.4370900482024],
[-73.648051977364, 45.4402561224796],
[-73.6470945537851, 45.4407073290916],
[-73.6392793914912, 45.4438396460105],
[-73.6351699979365, 45.445393422083],
[-73.6348120456809, 45.444546590121],
[-73.6334152486196, 45.4438343169323],
[-73.6341339482992, 45.4434436213567],
[-73.6319594346838, 45.4420660970196],
[-73.6304212122284, 45.4412800353944],
[-73.6292793360419, 45.4422437520764],
[-73.6203669519898, 45.4381561591494],
[-73.6185038157741, 45.4371719975162],
[-73.6147722148194, 45.4363801178349],
[-73.6153394945845, 45.4349173246406],
[-73.6189096270924, 45.431198716026],
[-73.6213932515199, 45.4290799524068],
[-73.625860660556, 45.4262630893683],
[-73.6235576102796, 45.4251452650735],
[-73.6221765288238, 45.4233556809216],
[-73.6269794842437, 45.4219064890514],
[-73.629580513036, 45.4205264796284],
[-73.630914321986, 45.4207058504903],
[-73.6349821404871, 45.4216213986168],
[-73.6378211847585, 45.4157853047214],
[-73.6373466145775, 45.4154299316521]]]},
'properties': {'district': '52-Cecil-P.-Newman'},
'id': '52'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.8688974470136, 45.4882449524107],
[-73.871602833053, 45.4905720481716],
[-73.8694139090223, 45.4919469541754],
[-73.870532930773, 45.4928625205596],
[-73.8716913646707, 45.4933306815312],
[-73.872233047857, 45.4949468141821],
[-73.8714042058561, 45.4965567000138],
[-73.872571305249, 45.4969659674767],
[-73.871134091344, 45.4990564163597],
[-73.8701130707197, 45.5000549627491],
[-73.8690288298613, 45.5007201896345],
[-73.8722903935919, 45.503568954282],
[-73.8716174921312, 45.5042888396132],
[-73.8756305607743, 45.5078228770541],
[-73.8783878189261, 45.5059406633388],
[-73.8803094438111, 45.5042458334118],
[-73.8803341428118, 45.5033993667444],
[-73.879759682167, 45.5029518530572],
[-73.8770152857708, 45.501806378212],
[-73.8789156358527, 45.5017299402712],
[-73.879779371889, 45.5004798588748],
[-73.8810568286333, 45.4999384356033],
[-73.8830127770248, 45.4996741535333],
[-73.884412047715, 45.4990183531015],
[-73.8853262749786, 45.4998100023704],
[-73.8840175555813, 45.5020031308338],
[-73.8845885513537, 45.503100834689],
[-73.8882584256138, 45.5047130635017],
[-73.8902948397667, 45.5048242389134],
[-73.8931298332185, 45.5045492632818],
[-73.8938090092703, 45.5051466368411],
[-73.8930883375795, 45.5061095241892],
[-73.8912989165002, 45.5060276552235],
[-73.8907763512179, 45.5069642008183],
[-73.8894862335895, 45.5075924382318],
[-73.8893630543063, 45.5086347066791],
[-73.8880808924888, 45.5083547817147],
[-73.8870687665439, 45.5091995603904],
[-73.8852521620131, 45.5102059725257],
[-73.8881290541888, 45.5127359235277],
[-73.8890287067442, 45.5122302528857],
[-73.8911436774502, 45.5127840458479],
[-73.8937551506541, 45.5125006850816],
[-73.8953141801776, 45.5130744053201],
[-73.896331119406, 45.5139759395892],
[-73.8972364759115, 45.5131483697101],
[-73.8989649328704, 45.5146837440746],
[-73.9002254469086, 45.5131179581327],
[-73.9008379207362, 45.5136630574361],
[-73.9005919569215, 45.5144536068957],
[-73.9021261241608, 45.5155955053506],
[-73.9009914493894, 45.5161347116661],
[-73.9020712706953, 45.5167877731109],
[-73.9020876361723, 45.5172918560237],
[-73.8999623185899, 45.5172091442281],
[-73.8983416967041, 45.5160989860003],
[-73.8970501718221, 45.5162744685233],
[-73.896506711813, 45.5172571885447],
[-73.8931760247634, 45.5179232635692],
[-73.8918830801879, 45.5186858504077],
[-73.89060443538, 45.5188882146005],
[-73.8899347125325, 45.5182876407975],
[-73.8875283162043, 45.5182958298662],
[-73.8871271342177, 45.5195300009394],
[-73.8860195052025, 45.5203975900766],
[-73.8849337116296, 45.5207252282394],
[-73.8820294235971, 45.5209418712909],
[-73.8801807487187, 45.5201561927542],
[-73.8790398509879, 45.5199080044884],
[-73.8757241818541, 45.5198469639429],
[-73.8712540724591, 45.51942970446],
[-73.8693729830596, 45.5195167954401],
[-73.867959836772, 45.5187475084215],
[-73.8660852612371, 45.518916733747],
[-73.8650447273518, 45.5192607308197],
[-73.8636752254303, 45.5192742783684],
[-73.8642825006245, 45.5181743422849],
[-73.8612862477059, 45.5160062120045],
[-73.8573480782361, 45.5146328898613],
[-73.8576368219668, 45.5137501468995],
[-73.8563777974017, 45.5129982318504],
[-73.8561039739004, 45.5121981492155],
[-73.8550238065929, 45.5113916654122],
[-73.8556577823538, 45.5104448573143],
[-73.8585654378245, 45.508816075481],
[-73.8591760216501, 45.5082382022867],
[-73.8597941402612, 45.5068235473577],
[-73.8595897032533, 45.5048715239796],
[-73.8603509384135, 45.5038432949756],
[-73.8628677193202, 45.5031873776418],
[-73.8634772725348, 45.5024655856932],
[-73.863229031203, 45.4996768609889],
[-73.8624925888829, 45.4985813745818],
[-73.8617450446894, 45.4983353640287],
[-73.8610656712915, 45.4975420638734],
[-73.8614902756333, 45.4959120252572],
[-73.8631347750672, 45.4949799702698],
[-73.8643010381037, 45.4932934742402],
[-73.8637682240978, 45.4920174491202],
[-73.8642488213344, 45.4911520725992],
[-73.8664440380781, 45.4903261139859],
[-73.8688974470136, 45.4882449524107]]]},
'properties': {'district': '61-Pierre-Foretier'},
'id': '61'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.871602833053, 45.4905720481716],
[-73.8758099807102, 45.4943016403121],
[-73.8832708288195, 45.4900124335721],
[-73.893915982267, 45.4991295138785],
[-73.8978204833524, 45.5021042916793],
[-73.8993079427873, 45.5021890950386],
[-73.901198690394, 45.5019296796061],
[-73.9032166411352, 45.5013944047771],
[-73.9072471667436, 45.4990521662397],
[-73.9097687478128, 45.498420306124],
[-73.910763113645, 45.4979785583287],
[-73.9131442528934, 45.5001505549281],
[-73.9117306033429, 45.5014828251295],
[-73.9105682077776, 45.502919788446],
[-73.9125029822642, 45.5046603019441],
[-73.9125904080641, 45.5059790139203],
[-73.9115367282405, 45.5071346344323],
[-73.9098260610793, 45.5077167397986],
[-73.9095376253027, 45.5082630419981],
[-73.9075790301516, 45.5084626314966],
[-73.9064637954127, 45.5082146250766],
[-73.9052902228377, 45.5087497533613],
[-73.9048304811418, 45.5093648655927],
[-73.9028980165401, 45.5106748854948],
[-73.9025706032313, 45.513213659007],
[-73.9021033388663, 45.5139081604197],
[-73.9026005080814, 45.5156160928628],
[-73.9021261241608, 45.5155955053506],
[-73.9005919569215, 45.5144536068957],
[-73.9008379207362, 45.5136630574361],
[-73.9002254469086, 45.5131179581327],
[-73.8989649328704, 45.5146837440746],
[-73.8972364759115, 45.5131483697101],
[-73.896331119406, 45.5139759395892],
[-73.8953141801776, 45.5130744053201],
[-73.8937551506541, 45.5125006850816],
[-73.8911436774502, 45.5127840458479],
[-73.8890287067442, 45.5122302528857],
[-73.8881290541888, 45.5127359235277],
[-73.8852521620131, 45.5102059725257],
[-73.8870687665439, 45.5091995603904],
[-73.8880808924888, 45.5083547817147],
[-73.8893630543063, 45.5086347066791],
[-73.8894862335895, 45.5075924382318],
[-73.8907763512179, 45.5069642008183],
[-73.8912989165002, 45.5060276552235],
[-73.8930883375795, 45.5061095241892],
[-73.8938090092703, 45.5051466368411],
[-73.8931298332185, 45.5045492632818],
[-73.8902948397667, 45.5048242389134],
[-73.8882584256138, 45.5047130635017],
[-73.8845885513537, 45.503100834689],
[-73.8840175555813, 45.5020031308338],
[-73.8853262749786, 45.4998100023704],
[-73.884412047715, 45.4990183531015],
[-73.8830127770248, 45.4996741535333],
[-73.8810568286333, 45.4999384356033],
[-73.879779371889, 45.5004798588748],
[-73.8789156358527, 45.5017299402712],
[-73.8770152857708, 45.501806378212],
[-73.879759682167, 45.5029518530572],
[-73.8803341428118, 45.5033993667444],
[-73.8803094438111, 45.5042458334118],
[-73.8783878189261, 45.5059406633388],
[-73.8756305607743, 45.5078228770541],
[-73.8716174921312, 45.5042888396132],
[-73.8722903935919, 45.503568954282],
[-73.8690288298613, 45.5007201896345],
[-73.8701130707197, 45.5000549627491],
[-73.871134091344, 45.4990564163597],
[-73.872571305249, 45.4969659674767],
[-73.8714042058561, 45.4965567000138],
[-73.872233047857, 45.4949468141821],
[-73.8716913646707, 45.4933306815312],
[-73.870532930773, 45.4928625205596],
[-73.8694139090223, 45.4919469541754],
[-73.871602833053, 45.4905720481716]]]},
'properties': {'district': '62-Denis-Benjamin-Viger'},
'id': '62'},
{'type': 'Feature',
'geometry': {'type': 'MultiPolygon',
'coordinates': [[[[-73.876179389015, 45.484463443982],
[-73.8748623836763, 45.4845487678604],
[-73.8746531555376, 45.4838655945021],
[-73.8752754756586, 45.4831976914281],
[-73.875332125701, 45.4820996763162],
[-73.8773551113916, 45.4823719006883],
[-73.8773585206136, 45.4838386904758],
[-73.8770492982827, 45.4844695752153],
[-73.876179389015, 45.484463443982]]],
[[[-73.871602833053, 45.4905720481716],
[-73.8688974470136, 45.4882449524107],
[-73.8709851008353, 45.487059190004],
[-73.8725145833884, 45.4854652904542],
[-73.8761955543809, 45.4864641220707],
[-73.8773897323982, 45.4856292741431],
[-73.8778041545601, 45.4844850797772],
[-73.8785921129696, 45.4837086183771],
[-73.8781898959115, 45.4828731025615],
[-73.8784365392884, 45.4814954771698],
[-73.8796440398513, 45.4803396456993],
[-73.8808564171004, 45.4799307290984],
[-73.8818738698332, 45.4790634862107],
[-73.8828567898793, 45.4787722169973],
[-73.8847419788084, 45.4776140567433],
[-73.8874400837697, 45.4756252617452],
[-73.8890406450115, 45.4740361165489],
[-73.8896093964888, 45.473044339843],
[-73.8920158379205, 45.4714793088166],
[-73.8939883829402, 45.4719134901468],
[-73.8962921181107, 45.4721394139777],
[-73.8981449394396, 45.4719079872095],
[-73.8992850543273, 45.4721559893786],
[-73.9014271769693, 45.4712486357827],
[-73.9038056762196, 45.4712042547101],
[-73.9051695937615, 45.4705605613393],
[-73.9045774306121, 45.4700226989345],
[-73.9028488295322, 45.4697318295333],
[-73.9012801121118, 45.4703403082789],
[-73.8996924472568, 45.4700938928558],
[-73.8993825392247, 45.469663097207],
[-73.8999775060713, 45.4688151666323],
[-73.9017348723624, 45.4677561646305],
[-73.9023924422294, 45.468509706018],
[-73.9043441969034, 45.4696096448133],
[-73.9084347070547, 45.4693341104744],
[-73.9120964530199, 45.4682153872984],
[-73.9126431874804, 45.4694449753644],
[-73.9136278859403, 45.4694413239075],
[-73.9154106009438, 45.4701278046013],
[-73.9159006769417, 45.4706838913767],
[-73.9168728992832, 45.4707163448971],
[-73.9159791650457, 45.4726632836215],
[-73.9164275963913, 45.4727606419858],
[-73.9171840487468, 45.4712821683374],
[-73.9179119052825, 45.4711355184565],
[-73.9186742261816, 45.4721675623649],
[-73.9196472003342, 45.4740176773167],
[-73.9200930017441, 45.4737730563005],
[-73.921822149022, 45.4741086594329],
[-73.9226284972793, 45.4752714551831],
[-73.924738453321, 45.4775172443067],
[-73.9253150364798, 45.4776590879844],
[-73.9266000233535, 45.476745452941],
[-73.9277434225804, 45.477398128666],
[-73.9295423138299, 45.4767974221727],
[-73.9302919142255, 45.4778114366407],
[-73.9314189351491, 45.4779961715469],
[-73.9326541103686, 45.4772716425334],
[-73.9335030743869, 45.4762245897937],
[-73.9350412733002, 45.4766507100519],
[-73.9370692452005, 45.4762391230436],
[-73.9406266477915, 45.4761163385087],
[-73.942911201225, 45.475477638423],
[-73.9443213415212, 45.4758861323891],
[-73.9441879968396, 45.4768134931837],
[-73.9428248046939, 45.478697804247],
[-73.9416119001885, 45.4794240216934],
[-73.9405851561781, 45.4789960185208],
[-73.9387460246999, 45.4793540720446],
[-73.9383403023619, 45.4798235952081],
[-73.9385185477879, 45.4813526185292],
[-73.9403810268872, 45.4823442895009],
[-73.9410419166311, 45.4834215699972],
[-73.942256795601, 45.483380875313],
[-73.9426871284147, 45.4827943413787],
[-73.9436978356457, 45.482808418644],
[-73.9433844250482, 45.4836104864635],
[-73.9412104480622, 45.4837088979371],
[-73.941186300091, 45.4855356756957],
[-73.9409258043702, 45.4865805138247],
[-73.940155183621, 45.4878253029672],
[-73.9400375236355, 45.4891394779763],
[-73.939084522942, 45.4899799926108],
[-73.9355316222878, 45.4921352533586],
[-73.9349775409211, 45.4932801876613],
[-73.9328555975538, 45.4935401391563],
[-73.9323151123675, 45.4931193083499],
[-73.9298370141484, 45.4936595300698],
[-73.9291104700923, 45.4940132354185],
[-73.9270348943367, 45.4936430419454],
[-73.925473026234, 45.4952145713303],
[-73.9244092344479, 45.4966763272855],
[-73.9244257212294, 45.4971711381462],
[-73.9233876507023, 45.4982360094313],
[-73.9226520258841, 45.4995263547275],
[-73.9218373692027, 45.5000962326717],
[-73.9209670436555, 45.5000814447197],
[-73.918541557808, 45.5008552086516],
[-73.9174837992266, 45.5014440345453],
[-73.9145252844175, 45.5010948373465],
[-73.9134946418312, 45.5018904208046],
[-73.9127623770829, 45.5032518742003],
[-73.9125029822642, 45.5046603019441],
[-73.9105682077776, 45.502919788446],
[-73.9117306033429, 45.5014828251295],
[-73.9131442528934, 45.5001505549281],
[-73.910763113645, 45.4979785583287],
[-73.9097687478128, 45.498420306124],
[-73.9072471667436, 45.4990521662397],
[-73.9032166411352, 45.5013944047771],
[-73.901198690394, 45.5019296796061],
[-73.8993079427873, 45.5021890950386],
[-73.8978204833524, 45.5021042916793],
[-73.893915982267, 45.4991295138785],
[-73.8832708288195, 45.4900124335721],
[-73.8758099807102, 45.4943016403121],
[-73.871602833053, 45.4905720481716]]]]},
'properties': {'district': '63-Jacques-Bizard'},
'id': '63'},
{'type': 'Feature',
'geometry': {'type': 'MultiPolygon',
'coordinates': [[[[-73.8795251463835, 45.4721694456373],
[-73.8770259047514, 45.4733055656905],
[-73.8771362722445, 45.474146820144],
[-73.8758315302677, 45.4744852213893],
[-73.8761694823241, 45.475285050858],
[-73.8753710533004, 45.4763945070991],
[-73.8754013038998, 45.4771052655959],
[-73.8745581040502, 45.4791867014648],
[-73.873401680597, 45.4803243146019],
[-73.8714778204625, 45.4814913213621],
[-73.8706822810873, 45.4830686993857],
[-73.8688129680033, 45.4847754445001],
[-73.8690502967072, 45.4858455083571],
[-73.8658510539776, 45.4876644845598],
[-73.8647484711707, 45.4872900384824],
[-73.8624368975074, 45.4879093508046],
[-73.8598077012489, 45.4888850004049],
[-73.8587614558506, 45.4873090890375],
[-73.8613316931676, 45.4851413285652],
[-73.8624629228902, 45.4840039194648],
[-73.8650419471552, 45.4821657726431],
[-73.8728715855598, 45.4756017517064],
[-73.871209821762, 45.4733162451191],
[-73.8733213850942, 45.4725990666647],
[-73.8782862116718, 45.4705088548296],
[-73.8795251463835, 45.4721694456373]]],
[[[-73.8598857733827, 45.4911029074784],
[-73.8591675296752, 45.4908171897388],
[-73.8600571674373, 45.4898965476815],
[-73.8612991016732, 45.4900456152652],
[-73.8605639387492, 45.4911097682054],
[-73.8598857733827, 45.4911029074784]]]]},
'properties': {'district': '64-Sainte-Geneviève'},
'id': '64'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.505845657669, 45.5915064148139],
[-73.5103359282538, 45.5921124591547],
[-73.5206880075519, 45.5952083313336],
[-73.5204207506441, 45.5957326455424],
[-73.5227698757162, 45.5964405193219],
[-73.5231408135446, 45.5957591991736],
[-73.533521772969, 45.5988762603839],
[-73.5369160899836, 45.5931626565659],
[-73.5411715382662, 45.5939767034301],
[-73.5423606148624, 45.5943108573749],
[-73.5455045323429, 45.5956272275911],
[-73.5452799498143, 45.5959627917351],
[-73.5438572127564, 45.5980784963673],
[-73.5442050076359, 45.5981948225546],
[-73.5445859643042, 45.5999308464328],
[-73.5451108447268, 45.6000061818095],
[-73.5447576674512, 45.6019410417126],
[-73.5407418924341, 45.6006998521118],
[-73.539729971205, 45.6018186221009],
[-73.5429289535666, 45.6032316351511],
[-73.5421763850909, 45.6042454438226],
[-73.5394321608651, 45.6030910243993],
[-73.5365958888719, 45.602162446611],
[-73.5365038947396, 45.6026457300995],
[-73.5375401492111, 45.6052359766051],
[-73.5416213388458, 45.606939681157],
[-73.540900931842, 45.6078533012629],
[-73.5416434070878, 45.6081797015109],
[-73.5412098839782, 45.6095033241271],
[-73.5441363974969, 45.6102716461918],
[-73.5453373826653, 45.6107633861198],
[-73.5444977198785, 45.6121760838565],
[-73.5462767505068, 45.6127238289344],
[-73.5452777806501, 45.6141657083913],
[-73.5437218072693, 45.6149096422408],
[-73.5381703589619, 45.6139517855176],
[-73.5375256945614, 45.6160673327401],
[-73.5252332402243, 45.6137951013372],
[-73.5145702896503, 45.6119902043961],
[-73.5073926872162, 45.6107104987953],
[-73.507104042043, 45.6103305736701],
[-73.5088445389914, 45.6059056683277],
[-73.5094016237031, 45.6029289790696],
[-73.5089844073373, 45.5984312397903],
[-73.5085623510741, 45.5964354408978],
[-73.5073994472774, 45.5937585441643],
[-73.505845657669, 45.5915064148139]]]},
'properties': {'district': '71-Tétreaultville'},
'id': '71'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.505845657669, 45.5915064148139],
[-73.5052335547608, 45.5914035841385],
[-73.5040074172822, 45.5877509637108],
[-73.50548477383, 45.5842108995057],
[-73.5046727489859, 45.5839523001102],
[-73.5060139625714, 45.5806625893987],
[-73.5058561540639, 45.5806068926751],
[-73.5091666956111, 45.5757730349861],
[-73.5141197194594, 45.5708695926608],
[-73.5190039768335, 45.5682773867463],
[-73.5197939453882, 45.5669670591355],
[-73.5180270972663, 45.5661485153046],
[-73.5253430489297, 45.5574887203531],
[-73.5250635489053, 45.5568993328574],
[-73.5236813870747, 45.5568097261785],
[-73.521480081669, 45.5591100901826],
[-73.5209547766993, 45.5588573091504],
[-73.5218702090576, 45.5578763137034],
[-73.5209413390244, 45.5570999459563],
[-73.5191167026398, 45.5588496230043],
[-73.518595216105, 45.5586040300451],
[-73.522051635704, 45.5552304196808],
[-73.5269225613603, 45.549446926412],
[-73.5335765932332, 45.5515757481653],
[-73.5389816134656, 45.5533773670715],
[-73.5382239872366, 45.5549283797349],
[-73.5486183023616, 45.5582491708623],
[-73.5460296824187, 45.562265422129],
[-73.5459659905086, 45.5625254142127],
[-73.5456328946765, 45.5629337545645],
[-73.5413632157982, 45.5709610549351],
[-73.5386884000436, 45.5749269433291],
[-73.5320531965098, 45.5852349268307],
[-73.540035463506, 45.5878529169711],
[-73.5369160899836, 45.5931626565659],
[-73.533521772969, 45.5988762603839],
[-73.5231408135446, 45.5957591991736],
[-73.5227698757162, 45.5964405193219],
[-73.5204207506441, 45.5957326455424],
[-73.5206880075519, 45.5952083313336],
[-73.5103359282538, 45.5921124591547],
[-73.505845657669, 45.5915064148139]]]},
'properties': {'district': '72-MaisonneuveLongue-Pointe'},
'id': '72'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5269225613603, 45.549446926412],
[-73.5289560474797, 45.5470320263359],
[-73.5277739913219, 45.547187016061],
[-73.5277290513663, 45.5464490003045],
[-73.5313590128093, 45.5457750092113],
[-73.5321039500724, 45.5447229718789],
[-73.5291969726971, 45.5451540050291],
[-73.5296700173696, 45.5442239930694],
[-73.5329650126455, 45.5436089818848],
[-73.5339429567644, 45.5424780308809],
[-73.5315039994787, 45.5426720333775],
[-73.5316359736222, 45.5420080334177],
[-73.5344850464319, 45.5413149877237],
[-73.5404589754615, 45.5356759920904],
[-73.5417879567955, 45.529933001055],
[-73.5428587889529, 45.5304546205586],
[-73.5439636509721, 45.5334697006227],
[-73.5473499781753, 45.5376709059424],
[-73.5482541001656, 45.5383569002539],
[-73.550216365092, 45.5389758922042],
[-73.5592280432661, 45.5399028690768],
[-73.5552605710227, 45.5474166761255],
[-73.5545655421497, 45.55467023726],
[-73.5542787320438, 45.5568764086233],
[-73.5546496932451, 45.5649641797921],
[-73.5544730757919, 45.5652953442798],
[-73.5459659905086, 45.5625254142127],
[-73.5460296824187, 45.562265422129],
[-73.5486183023616, 45.5582491708623],
[-73.5382239872366, 45.5549283797349],
[-73.5389816134656, 45.5533773670715],
[-73.5335765932332, 45.5515757481653],
[-73.5269225613603, 45.549446926412]]]},
'properties': {'district': '73-Hochelaga'},
'id': '73'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5455045323429, 45.5956272275911],
[-73.5423606148624, 45.5943108573749],
[-73.5411715382662, 45.5939767034301],
[-73.5369160899836, 45.5931626565659],
[-73.540035463506, 45.5878529169711],
[-73.5320531965098, 45.5852349268307],
[-73.5386884000436, 45.5749269433291],
[-73.5413632157982, 45.5709610549351],
[-73.5456328946765, 45.5629337545645],
[-73.5459659905086, 45.5625254142127],
[-73.5544730757919, 45.5652953442798],
[-73.5489772535198, 45.5734435433853],
[-73.5557298683366, 45.5757065336466],
[-73.5584435150771, 45.578098690279],
[-73.5683754804235, 45.5814045757918],
[-73.5648413846768, 45.5830623920281],
[-73.566054883333, 45.5843176844033],
[-73.563949176176, 45.5849798671748],
[-73.5642198577817, 45.5854079588427],
[-73.5642246834943, 45.5872483268508],
[-73.5663609324088, 45.5883396268265],
[-73.5686767639537, 45.5922969983003],
[-73.5690474086577, 45.5937353194892],
[-73.5687432258054, 45.5949521683749],
[-73.5696609688417, 45.5965806032278],
[-73.5694206600629, 45.5971486400825],
[-73.5576871015794, 45.5932166140624],
[-73.5489394765731, 45.5903029802044],
[-73.5465394629102, 45.5940712033384],
[-73.5481396292151, 45.5946360429193],
[-73.5473484500099, 45.5955355370728],
[-73.545930102715, 45.5949937733284],
[-73.5455045323429, 45.5956272275911]]]},
'properties': {'district': '74-Louis-Riel'},
'id': '74'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.6202427208594, 45.5951205335532],
[-73.6296215435427, 45.5838130726522],
[-73.6288186186035, 45.5832571469721],
[-73.631962332515, 45.579640175342],
[-73.6327012962769, 45.5799802985646],
[-73.6363215300962, 45.5759177646435],
[-73.652557313063, 45.5826892716542],
[-73.6543058972308, 45.5836262624158],
[-73.6531900096361, 45.5859698880497],
[-73.6526947978849, 45.5876532157306],
[-73.6523937374702, 45.5900742122073],
[-73.6505401287885, 45.5918403260598],
[-73.6490983475598, 45.5943078055034],
[-73.646028354957, 45.5966872776611],
[-73.6450204850692, 45.598497300652],
[-73.6434244270991, 45.6009558130627],
[-73.6432738605823, 45.6022427894953],
[-73.6418446065649, 45.6048360555341],
[-73.6415278334524, 45.606276219979],
[-73.6400469319338, 45.6087976232294],
[-73.6388534618155, 45.6101933725153],
[-73.6374274156649, 45.6122509805631],
[-73.6349651825723, 45.6101401159366],
[-73.6284179810453, 45.603912893307],
[-73.6227414555439, 45.5985713755102],
[-73.6209924104659, 45.5968531497608],
[-73.6216736698201, 45.5964861898013],
[-73.6202427208594, 45.5951205335532]]]},
'properties': {'district': '81-Marie-Clarac'},
'id': '81'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.6028907661658, 45.6112216102358],
[-73.6041139394664, 45.6106174089674],
[-73.6035616092243, 45.6101078733853],
[-73.6048043091085, 45.6094292879636],
[-73.6062298901187, 45.610759685103],
[-73.6079197060538, 45.6094530924621],
[-73.6092890313816, 45.6081470965116],
[-73.6125635803426, 45.604373796832],
[-73.61467650443, 45.601820884038],
[-73.6202427208594, 45.5951205335532],
[-73.6216736698201, 45.5964861898013],
[-73.6209924104659, 45.5968531497608],
[-73.6227414555439, 45.5985713755102],
[-73.6284179810453, 45.603912893307],
[-73.6349651825723, 45.6101401159366],
[-73.6374274156649, 45.6122509805631],
[-73.6357315212, 45.6162353900055],
[-73.6334060135125, 45.6196665233391],
[-73.6310514588113, 45.6217838603777],
[-73.6289543944547, 45.6234221648674],
[-73.6269636907653, 45.6247707822286],
[-73.6250472436735, 45.6262897836938],
[-73.6235959602566, 45.6271766849645],
[-73.6206953088035, 45.6298453145986],
[-73.6168081007299, 45.6262083345707],
[-73.6071490341973, 45.6170493269392],
[-73.6023660828945, 45.6125718329314],
[-73.601559767966, 45.6118073578371],
[-73.6028907661658, 45.6112216102358]]]},
'properties': {'district': '82-Ovide-Clermont'},
'id': '82'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5989854515795, 45.5160358124743],
[-73.5986563507028, 45.5163499572059],
[-73.601437737118, 45.5176238014654],
[-73.6020308024605, 45.5177034122021],
[-73.613010925262, 45.5225880512056],
[-73.6108850612038, 45.5249602486287],
[-73.5966746401772, 45.5186407402299],
[-73.5982202946245, 45.5169177573452],
[-73.5969109664106, 45.5161364855643],
[-73.5989854515795, 45.5160358124743]]]},
'properties': {'district': '91-Claude-Ryan'},
'id': '91'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5989854515795, 45.5160358124743],
[-73.6044730454934, 45.5155769251068],
[-73.6089843852315, 45.5146703511952],
[-73.6091799069916, 45.5148927825],
[-73.6186655613026, 45.5191467549529],
[-73.6148105187034, 45.5234843904785],
[-73.6155485100061, 45.52374152426],
[-73.6253373412254, 45.518414467689],
[-73.6244833769123, 45.5195443162251],
[-73.6208637881685, 45.5236565043515],
[-73.617235572865, 45.5277835686717],
[-73.6170925681517, 45.5277209056734],
[-73.6124143323658, 45.525647330045],
[-73.6108850612038, 45.5249602486287],
[-73.613010925262, 45.5225880512056],
[-73.6020308024605, 45.5177034122021],
[-73.601437737118, 45.5176238014654],
[-73.5986563507028, 45.5163499572059],
[-73.5989854515795, 45.5160358124743]]]},
'properties': {'district': '92-Joseph-Beaubien'},
'id': '92'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5956108742759, 45.504064067218],
[-73.5987846893921, 45.5056180649425],
[-73.5993805679324, 45.5053898653966],
[-73.6024762927983, 45.5068574351344],
[-73.6035337540631, 45.5057001623398],
[-73.6061344132343, 45.5068772235294],
[-73.6063535452531, 45.5074911306599],
[-73.6130513861854, 45.5104478685544],
[-73.6182356279483, 45.504722156916],
[-73.6189454361275, 45.5051234940594],
[-73.6160933747766, 45.5082725969653],
[-73.6178928803835, 45.5091750557282],
[-73.6169256431203, 45.5102737338336],
[-73.61888001694, 45.5111346532789],
[-73.617959519301, 45.5121686212918],
[-73.6171142113946, 45.5117885655948],
[-73.6163442345691, 45.5125462730753],
[-73.615038686563, 45.511951761593],
[-73.6111115129373, 45.5140796366228],
[-73.6089843852315, 45.5146703511952],
[-73.6044730454934, 45.5155769251068],
[-73.5989854515795, 45.5160358124743],
[-73.5969109664106, 45.5161364855643],
[-73.5982202946245, 45.5169177573452],
[-73.5966746401772, 45.5186407402299],
[-73.5902604532774, 45.5157813641729],
[-73.5911992183544, 45.5147110287094],
[-73.5918451342772, 45.5144729450241],
[-73.5968586638591, 45.5145623065118],
[-73.5978614314752, 45.5141637733071],
[-73.598896296438, 45.5131127563816],
[-73.5969405107098, 45.5130415385056],
[-73.5969012890154, 45.5117790625741],
[-73.5949672180747, 45.5109069459258],
[-73.5935088435771, 45.5105257693584],
[-73.594191031848, 45.5097864575692],
[-73.591464574106, 45.508070751295],
[-73.5956108742759, 45.504064067218]]]},
'properties': {'district': '93-Robert-Bourassa'},
'id': '93'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.617959519301, 45.5121686212918],
[-73.6176645335398, 45.5125000231349],
[-73.6207592308166, 45.5138993727882],
[-73.6267223236567, 45.5165801475772],
[-73.6253373412254, 45.518414467689],
[-73.6155485100061, 45.52374152426],
[-73.6148105187034, 45.5234843904785],
[-73.6186655613026, 45.5191467549529],
[-73.6091799069916, 45.5148927825],
[-73.6089843852315, 45.5146703511952],
[-73.6111115129373, 45.5140796366228],
[-73.615038686563, 45.511951761593],
[-73.6163442345691, 45.5125462730753],
[-73.6171142113946, 45.5117885655948],
[-73.617959519301, 45.5121686212918]]]},
'properties': {'district': '94-Jeanne-Sauvé'},
'id': '94'},
{'type': 'Feature',
'geometry': {'type': 'MultiPolygon',
'coordinates': [[[[-73.8187679895316, 45.5140812084438],
[-73.8182383369059, 45.5132188436317],
[-73.8194262685108, 45.5128016511853],
[-73.8210527525633, 45.5129859861948],
[-73.8211602697308, 45.5138855228726],
[-73.8187679895316, 45.5140812084438]]],
[[[-73.7612752776246, 45.5104175090183],
[-73.7551669017747, 45.5064862077527],
[-73.7550630650544, 45.5065238038199],
[-73.7516832079437, 45.5044227485347],
[-73.7530750881715, 45.5037537247243],
[-73.7547114610262, 45.5033812068779],
[-73.756652358581, 45.5024589334263],
[-73.7582371682807, 45.5020414841587],
[-73.7594306007504, 45.5027766325504],
[-73.7609994664832, 45.5016752336666],
[-73.7638615520544, 45.5034953365559],
[-73.764601206777, 45.5029446682134],
[-73.7653841918245, 45.5034648112556],
[-73.7671979733428, 45.5027497284985],
[-73.7692002551043, 45.5040137486001],
[-73.7709616412032, 45.5034073001873],
[-73.7725018897261, 45.5025715611262],
[-73.770851931212, 45.5015263075263],
[-73.7738796981111, 45.5005112554049],
[-73.7716579558132, 45.4991257181769],
[-73.7735738316828, 45.4981363521851],
[-73.7779880975343, 45.5009521734749],
[-73.780555316633, 45.4997211145292],
[-73.7811328878805, 45.5000886664279],
[-73.7828691809435, 45.4992834417083],
[-73.7866716942594, 45.5016560785918],
[-73.7833876826593, 45.5031694957223],
[-73.7921892811359, 45.505162983993],
[-73.790378705595, 45.5039707845666],
[-73.7971312330344, 45.5007319392105],
[-73.800845778582, 45.4990215282087],
[-73.8020719362353, 45.500313400533],
[-73.8090622022287, 45.4969839281454],
[-73.8103152495861, 45.4968275421823],
[-73.8148195197041, 45.5014854076037],
[-73.814130519647, 45.5018291882481],
[-73.8151983502239, 45.5028700758232],
[-73.8158749418108, 45.5025712297953],
[-73.8192989400152, 45.5061341618076],
[-73.8239273064692, 45.5039359215182],
[-73.8260247686459, 45.5028472072531],
[-73.8336495886976, 45.4992478732958],
[-73.8354476552771, 45.4983089444422],
[-73.835851882975, 45.4987134333303],
[-73.8376510464643, 45.4977036685397],
[-73.8352748755507, 45.4946201233283],
[-73.8359064469498, 45.4941865754856],
[-73.8445138674112, 45.4899447538175],
[-73.8461670237813, 45.488985999861],
[-73.8503699985263, 45.4936842455575],
[-73.853113099403, 45.4984292547447],
[-73.8558121436329, 45.5017030001578],
[-73.8554973469563, 45.506068266442],
[-73.8541507320505, 45.5071387755787],
[-73.8547842282295, 45.5078848003326],
[-73.8541503989792, 45.5088568468323],
[-73.8514364847285, 45.5107998956924],
[-73.8509728924279, 45.5113681864054],
[-73.8497265304179, 45.5116149897809],
[-73.8487575861648, 45.5122208147549],
[-73.8486390859537, 45.5137509650076],
[-73.8470767467479, 45.515690388096],
[-73.8459043806884, 45.5165397868316],
[-73.8447612809957, 45.5165252439303],
[-73.8416070645454, 45.5171016749459],
[-73.8379192636275, 45.5168516646645],
[-73.8362532214568, 45.51650560879],
[-73.8321180123678, 45.5163557197529],
[-73.8313656471532, 45.5168348664122],
[-73.8297408583824, 45.5169655584571],
[-73.8282028168338, 45.5166190156169],
[-73.8268661171387, 45.5156510162477],
[-73.8250222653614, 45.5155213777536],
[-73.8246734151281, 45.5149644141917],
[-73.8233629812572, 45.5141042906802],
[-73.8234733111558, 45.5132581353231],
[-73.8218473252627, 45.5131637356642],
[-73.8209366065744, 45.5128154164364],
[-73.8192176588039, 45.5126139694502],
[-73.8179057909873, 45.5132557668608],
[-73.8178065811604, 45.5138229980126],
[-73.8160507514445, 45.5154287971508],
[-73.814770537422, 45.5156310808765],
[-73.8131059190362, 45.5155096653326],
[-73.810217503155, 45.5162914840575],
[-73.8084551833961, 45.5162217432523],
[-73.8064888710304, 45.5155636081875],
[-73.8057027099487, 45.5147919349551],
[-73.8040410010469, 45.5149672884696],
[-73.801546777817, 45.5149829442516],
[-73.8001619454196, 45.5148065602758],
[-73.7995790764703, 45.5135123735559],
[-73.7995988098213, 45.5123965010493],
[-73.7992059489796, 45.5107148435346],
[-73.7978204799485, 45.5101065121228],
[-73.7969591683437, 45.5093799021214],
[-73.7939384028061, 45.509297721884],
[-73.79058311435, 45.5088654314285],
[-73.7870155334484, 45.5094594051816],
[-73.7852614432657, 45.5093198098856],
[-73.7829719822765, 45.5095864846083],
[-73.7806008657296, 45.5088903884048],
[-73.7769513427547, 45.5084674192311],
[-73.7745708564459, 45.5084461679299],
[-73.7719486126198, 45.5087044209407],
[-73.7697639799538, 45.5095104479827],
[-73.7673058990371, 45.5093183322757],
[-73.7625356657639, 45.5100672469129],
[-73.7612752776246, 45.5104175090183]]]]},
'properties': {'district': '101-Bois-de-Liesse'},
'id': '101'},
{'type': 'Feature',
'geometry': {'type': 'MultiPolygon',
'coordinates': [[[[-73.8461670237813, 45.488985999861],
[-73.850532069583, 45.486758681857],
[-73.8458397013725, 45.4794951647217],
[-73.8472019880053, 45.4788779608994],
[-73.8518367097832, 45.4764514219245],
[-73.8573573288562, 45.4736627559579],
[-73.8545371967343, 45.4706120339916],
[-73.8603908221258, 45.4659954945452],
[-73.859889484827, 45.4655831049747],
[-73.8669852747875, 45.4613941823855],
[-73.8659406037748, 45.4600298096328],
[-73.8814395340419, 45.4526362439631],
[-73.8847216555087, 45.4524908762247],
[-73.8890536732734, 45.4491166876217],
[-73.8915462525593, 45.4480217199892],
[-73.8938116724967, 45.4465652096353],
[-73.8981246578432, 45.4475293470406],
[-73.9003739737275, 45.4471542652552],
[-73.9000666991504, 45.4467285005871],
[-73.9015060886188, 45.446358434947],
[-73.9023709077117, 45.4475251321732],
[-73.9043599589048, 45.4467892477034],
[-73.9055608807492, 45.4484676964261],
[-73.9104202259452, 45.4468936252547],
[-73.9231679445166, 45.4420154242323],
[-73.9228839309917, 45.4416385017936],
[-73.9245143656332, 45.4408765943703],
[-73.924830550628, 45.4404255381026],
[-73.9348115551979, 45.4490797759617],
[-73.9369647858857, 45.4508355286695],
[-73.9367305115467, 45.4519612579974],
[-73.936084813848, 45.45278257894],
[-73.9363214019941, 45.4536095287366],
[-73.9384314066949, 45.45366444434],
[-73.93849022267, 45.4546540611182],
[-73.9401870518575, 45.4558173634308],
[-73.9432583349177, 45.4561564624145],
[-73.9444816415584, 45.4572495419421],
[-73.9470042484352, 45.4577165755588],
[-73.9475358331527, 45.4586413391725],
[-73.9466703677291, 45.4591486916182],
[-73.9457347700682, 45.4588823651705],
[-73.9452919598077, 45.4594780510929],
[-73.9438715446993, 45.4593485885153],
[-73.9418275850641, 45.461228202182],
[-73.9418734970443, 45.4621908676335],
[-73.9433996704037, 45.4627518229434],
[-73.9458662537823, 45.4625712338861],
[-73.9452835656909, 45.4632754571652],
[-73.9455865563861, 45.4644081059436],
[-73.9444336707811, 45.464151615889],
[-73.9428244875956, 45.4644188471942],
[-73.9420560006039, 45.4659065384758],
[-73.9397320642846, 45.4663563878557],
[-73.9401770020335, 45.4676594913386],
[-73.9394768022606, 45.4680671581924],
[-73.9395814637767, 45.4700104369658],
[-73.9382622094761, 45.4714102256228],
[-73.9356853954855, 45.4722749319843],
[-73.9346437792633, 45.4731967435679],
[-73.9329374951772, 45.4725193630933],
[-73.9323111235668, 45.4725667323419],
[-73.9299152373346, 45.4737006039578],
[-73.928842473854, 45.4739115313467],
[-73.9275236887696, 45.4737184885069],
[-73.9265293732015, 45.4741631743875],
[-73.925796243829, 45.4736259485905],
[-73.9248000500235, 45.4721089475954],
[-73.9222818122356, 45.4705794857248],
[-73.922965231979, 45.4696141155523],
[-73.9226524205748, 45.4688324194201],
[-73.9212201297683, 45.4688467094977],
[-73.9216571330551, 45.4674143796986],
[-73.921550552687, 45.4668568126713],
[-73.9195312526606, 45.4635798400557],
[-73.9178201887521, 45.4621912996059],
[-73.9148789978459, 45.4619144443475],
[-73.9126660861929, 45.4603383473932],
[-73.91114607451, 45.4605598133876],
[-73.9103819033438, 45.4609764429342],
[-73.9100549453511, 45.4617335639878],
[-73.9082146339227, 45.4617969415567],
[-73.9075688375165, 45.4609865148744],
[-73.9058658349117, 45.4609563776965],
[-73.9051876779266, 45.4605991035458],
[-73.9038323289561, 45.4606219020727],
[-73.9020889859002, 45.4618068799119],
[-73.9017130574761, 45.4628880358479],
[-73.9003152261538, 45.4623259838994],
[-73.899767819995, 45.462669876326],
[-73.8976775036577, 45.4654577069673],
[-73.8962483592814, 45.4658946426154],
[-73.8957916608649, 45.4664270982997],
[-73.8945384007686, 45.4664224345534],
[-73.8936214304942, 45.4669655597388],
[-73.8921732932478, 45.4665295724673],
[-73.8916127412336, 45.4668464725107],
[-73.8913265706041, 45.4679902821467],
[-73.8900901349216, 45.4685793797869],
[-73.8888217813327, 45.4686035027193],
[-73.8860812311329, 45.4695648402732],
[-73.8847899934361, 45.4696321930072],
[-73.8828866868638, 45.4718612485547],
[-73.8823610038276, 45.4716560245278],
[-73.8811747849457, 45.4721459539451],
[-73.8806356311152, 45.471850773116],
[-73.8795251463835, 45.4721694456373],
[-73.8782862116718, 45.4705088548296],
[-73.8733213850942, 45.4725990666647],
[-73.871209821762, 45.4733162451191],
[-73.8728715855598, 45.4756017517064],
[-73.8650419471552, 45.4821657726431],
[-73.8624629228902, 45.4840039194648],
[-73.8613316931676, 45.4851413285652],
[-73.8587614558506, 45.4873090890375],
[-73.8598077012489, 45.4888850004049],
[-73.8592579904622, 45.4889452259737],
[-73.8578565654384, 45.4898674655412],
[-73.8569952719841, 45.4912379676731],
[-73.8545791042202, 45.4935760467931],
[-73.8531479621556, 45.4959201221199],
[-73.8544902230577, 45.4977606434992],
[-73.8548560501467, 45.4989743240793],
[-73.8555516665994, 45.4997100150003],
[-73.8578400891255, 45.4995048836594],
[-73.8585024501129, 45.4997829560785],
[-73.8591539006867, 45.5007425753891],
[-73.8588895885858, 45.501436262307],
[-73.8580145103082, 45.5020213087385],
[-73.8578513100126, 45.5031672055572],
[-73.85712842707, 45.5040318263201],
[-73.8570843291783, 45.505329258001],
[-73.8555961994083, 45.5077731597575],
[-73.8547842282295, 45.5078848003326],
[-73.8541507320505, 45.5071387755787],
[-73.8554973469563, 45.506068266442],
[-73.8558121436329, 45.5017030001578],
[-73.853113099403, 45.4984292547447],
[-73.8503699985263, 45.4936842455575],
[-73.8461670237813, 45.488985999861]]],
[[[-73.8565163230435, 45.5065638456799],
[-73.8570490281172, 45.5058063309797],
[-73.8583878278331, 45.5070438611748],
[-73.8567674874305, 45.5078408713637],
[-73.8559107285537, 45.5079515359158],
[-73.8565163230435, 45.5065638456799]]]]},
'properties': {'district': '102-Cap-Saint-Jacques'},
'id': '102'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5792047395127, 45.5280064404383],
[-73.581506814336, 45.5255527662198],
[-73.5893088980696, 45.5167596569974],
[-73.5902604532774, 45.5157813641729],
[-73.5966746401772, 45.5186407402299],
[-73.6108850612038, 45.5249602486287],
[-73.6124143323658, 45.525647330045],
[-73.6088433154766, 45.5276253868022],
[-73.6061835826899, 45.5283650193777],
[-73.6023604559616, 45.5284000664849],
[-73.5992862274652, 45.5288774305058],
[-73.5962116234987, 45.5301487739359],
[-73.5947764680621, 45.5311589735711],
[-73.5863837119054, 45.5382742004886],
[-73.5871054297936, 45.5372069067238],
[-73.5899093482658, 45.5348049045751],
[-73.5847595146863, 45.5324079438366],
[-73.5859421309178, 45.5310790335786],
[-73.5792047395127, 45.5280064404383]]]},
'properties': {'district': '111-Mile-End'},
'id': '111'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5655614721314, 45.5213643879447],
[-73.5740572626836, 45.5252747203744],
[-73.5745923823609, 45.5259374612073],
[-73.5792047395127, 45.5280064404383],
[-73.5859421309178, 45.5310790335786],
[-73.5847595146863, 45.5324079438366],
[-73.5899093482658, 45.5348049045751],
[-73.5871054297936, 45.5372069067238],
[-73.5863837119054, 45.5382742004886],
[-73.5862704189394, 45.5383757481773],
[-73.5838512015266, 45.5400861300747],
[-73.5810607519196, 45.5411249464667],
[-73.5786195284797, 45.5415422864787],
[-73.5764926058406, 45.5415739191208],
[-73.5735822926994, 45.5413565189643],
[-73.5592280432661, 45.5399028690768],
[-73.5613401818778, 45.5359226324552],
[-73.5641429566138, 45.5273492053093],
[-73.5652383566418, 45.5238165260966],
[-73.5655614721314, 45.5213643879447]]]},
'properties': {'district': '112-De Lorimier'},
'id': '112'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5734800018833, 45.5049709717948],
[-73.580113792401, 45.5081921313855],
[-73.5785542203746, 45.5104511791594],
[-73.5786781018666, 45.5117608495828],
[-73.582430798457, 45.5136019767056],
[-73.5893088980696, 45.5167596569974],
[-73.581506814336, 45.5255527662198],
[-73.5792047395127, 45.5280064404383],
[-73.5745923823609, 45.5259374612073],
[-73.5740572626836, 45.5252747203744],
[-73.5655614721314, 45.5213643879447],
[-73.5655904084691, 45.5210639273018],
[-73.571279665339, 45.5083636436696],
[-73.5729588302122, 45.5055494196855],
[-73.5734800018833, 45.5049709717948]]]},
'properties': {'district': '113-Jeanne-Mance'},
'id': '113'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.4868984819315, 45.6668163755988],
[-73.4909285596849, 45.6670796662378],
[-73.4943692754526, 45.6676107175883],
[-73.5052117189194, 45.6694506091685],
[-73.5066485322791, 45.66770609928],
[-73.5086661140009, 45.6660376032574],
[-73.514071369879, 45.663410883372],
[-73.5226608995211, 45.6590189476592],
[-73.5409160537594, 45.6501644528664],
[-73.5441930168941, 45.6487914226698],
[-73.544738106063, 45.6482242645147],
[-73.5524611738286, 45.6444112188767],
[-73.5555002141554, 45.6426177060947],
[-73.5652962272313, 45.6362003202316],
[-73.5713393674169, 45.6418436992789],
[-73.5731131247475, 45.6438386857375],
[-73.5764976851296, 45.641270099185],
[-73.5866413495341, 45.6508496604014],
[-73.5898582112291, 45.6537703909976],
[-73.5838459058531, 45.6567113166436],
[-73.5767899673498, 45.6602649640823],
[-73.5719339731853, 45.6626357744781],
[-73.539067309963, 45.678979317943],
[-73.5369552091684, 45.6802676902485],
[-73.5352474248791, 45.6816148433586],
[-73.532629555028, 45.6840504841943],
[-73.5308427113654, 45.6858730099174],
[-73.5292925000853, 45.6880318303705],
[-73.5284527492428, 45.6897324941851],
[-73.5262321777264, 45.695068712866],
[-73.5248704855113, 45.696745979989],
[-73.5234829925507, 45.6977084455985],
[-73.521300714461, 45.6988491350421],
[-73.518072949079, 45.7000844428825],
[-73.5135468623237, 45.7013546459954],
[-73.5051625304534, 45.7033317792418],
[-73.498947493721, 45.7045252458975],
[-73.4954757567513, 45.7049490135942],
[-73.4932103740932, 45.7047553331643],
[-73.4921323200277, 45.7041126467728],
[-73.4909405407531, 45.7027073672294],
[-73.4900498047694, 45.7021797732479],
[-73.4887664394737, 45.7021177409386],
[-73.4856763927507, 45.7030727269477],
[-73.4829186491029, 45.7036523330194],
[-73.4803835661343, 45.7046724098692],
[-73.4783219605948, 45.7052709191606],
[-73.4766385432002, 45.7054709950549],
[-73.4751651064534, 45.7048699119281],
[-73.4745824263264, 45.7033866618514],
[-73.4749382311583, 45.7024425674455],
[-73.4763824131897, 45.7006700752533],
[-73.4784777403736, 45.697652858064],
[-73.4790042639298, 45.6961901697848],
[-73.4792384579055, 45.6941308824961],
[-73.4796140010016, 45.6929943766718],
[-73.4803640884928, 45.6919258774639],
[-73.483643872129, 45.6885943328445],
[-73.4851764024197, 45.6867120396751],
[-73.4857156558079, 45.6857399456762],
[-73.4866448398145, 45.682296765324],
[-73.486914072058, 45.6801843677801],
[-73.4872497030629, 45.6755976940944],
[-73.4873520249609, 45.6730343323445],
[-73.4868984819315, 45.6668163755988]]]},
'properties': {'district': '121-La Pointe-aux-Prairies'},
'id': '121'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.544738106063, 45.6482242645147],
[-73.5441930168941, 45.6487914226698],
[-73.5409160537594, 45.6501644528664],
[-73.5226608995211, 45.6590189476592],
[-73.514071369879, 45.663410883372],
[-73.5086661140009, 45.6660376032574],
[-73.5066485322791, 45.66770609928],
[-73.5052117189194, 45.6694506091685],
[-73.4943692754526, 45.6676107175883],
[-73.4909285596849, 45.6670796662378],
[-73.4868984819315, 45.6668163755988],
[-73.4865306288933, 45.6640279113745],
[-73.486175917176, 45.6627454155844],
[-73.4851106606772, 45.6602901608252],
[-73.4846809037125, 45.6588306383762],
[-73.4832382097687, 45.6554954757732],
[-73.4821383232798, 45.6536179248291],
[-73.4787636354681, 45.6491486823782],
[-73.4780610185114, 45.6476510142289],
[-73.4774799728854, 45.6454905837529],
[-73.4872757738587, 45.6469779321365],
[-73.4879707187836, 45.6443924831145],
[-73.4878427542795, 45.6430795950772],
[-73.4879726577335, 45.6412664739826],
[-73.4872874543207, 45.6393119798027],
[-73.489854112659, 45.6368295683212],
[-73.4903943370184, 45.6355618234685],
[-73.4916720124889, 45.6345001210246],
[-73.4910397713222, 45.6338422392127],
[-73.491927215926, 45.6328678840833],
[-73.5098459767589, 45.6358225966319],
[-73.5202077969535, 45.6374981237725],
[-73.5214492864595, 45.6377899174742],
[-73.5431729267196, 45.6475814296488],
[-73.544738106063, 45.6482242645147]]]},
'properties': {'district': '122-Pointe-aux-Trembles'},
'id': '122'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5652962272313, 45.6362003202316],
[-73.5683379250343, 45.6341956640577],
[-73.5740068269183, 45.6304929149516],
[-73.5954830428467, 45.6158123480652],
[-73.5984976040034, 45.6140840514745],
[-73.6023660828945, 45.6125718329314],
[-73.6071490341973, 45.6170493269392],
[-73.6168081007299, 45.6262083345707],
[-73.6206953088035, 45.6298453145986],
[-73.6241232556812, 45.6330522649771],
[-73.5943845703787, 45.6513674636385],
[-73.5898582112291, 45.6537703909976],
[-73.5866413495341, 45.6508496604014],
[-73.5764976851296, 45.641270099185],
[-73.5731131247475, 45.6438386857375],
[-73.5713393674169, 45.6418436992789],
[-73.5652962272313, 45.6362003202316]]]},
'properties': {'district': '123-Rivière-des-Prairies'},
'id': '123'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5864681894816, 45.538468592349],
[-73.5862704189394, 45.5383757481773],
[-73.5863837119054, 45.5382742004886],
[-73.5947764680621, 45.5311589735711],
[-73.5962116234987, 45.5301487739359],
[-73.5992862274652, 45.5288774305058],
[-73.6023604559616, 45.5284000664849],
[-73.6061835826899, 45.5283650193777],
[-73.6088433154766, 45.5276253868022],
[-73.6124143323658, 45.525647330045],
[-73.6170925681517, 45.5277209056734],
[-73.6170629786343, 45.5290836882431],
[-73.6174856875378, 45.5297416402976],
[-73.6190955864224, 45.5306548374863],
[-73.6215351178101, 45.5311083503899],
[-73.6182756954315, 45.5346855542873],
[-73.6168611349556, 45.5357046144078],
[-73.6144250141163, 45.5383032859687],
[-73.6123252903368, 45.5421333051385],
[-73.6086846729618, 45.5461409843801],
[-73.6070387029669, 45.5479557550382],
[-73.6035398110948, 45.5463469119155],
[-73.5864681894816, 45.538468592349]]]},
'properties': {'district': '131-Saint-Édouard'},
'id': '131'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5864681894816, 45.538468592349],
[-73.6035398110948, 45.5463469119155],
[-73.6019471163738, 45.5481178990012],
[-73.5975914187124, 45.553207322408],
[-73.5910006798707, 45.5607570868859],
[-73.5774327397367, 45.5565544731088],
[-73.5794549693978, 45.5542318437368],
[-73.5755593123915, 45.5530615312237],
[-73.5800875168702, 45.5456157629748],
[-73.5813297515111, 45.5438139922411],
[-73.5837910525824, 45.541331668411],
[-73.5864681894816, 45.538468592349]]]},
'properties': {'district': '132-Étienne-Desmarteau'},
'id': '132'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5592280432661, 45.5399028690768],
[-73.5735822926994, 45.5413565189643],
[-73.5764926058406, 45.5415739191208],
[-73.5786195284797, 45.5415422864787],
[-73.5810607519196, 45.5411249464667],
[-73.5838512015266, 45.5400861300747],
[-73.5862704189394, 45.5383757481773],
[-73.5864681894816, 45.538468592349],
[-73.5837910525824, 45.541331668411],
[-73.5813297515111, 45.5438139922411],
[-73.5800875168702, 45.5456157629748],
[-73.5755593123915, 45.5530615312237],
[-73.5794549693978, 45.5542318437368],
[-73.5774327397367, 45.5565544731088],
[-73.573735635149, 45.5607975285183],
[-73.5588620237975, 45.5560173236498],
[-73.5545655421497, 45.55467023726],
[-73.5552605710227, 45.5474166761255],
[-73.5592280432661, 45.5399028690768]]]},
'properties': {'district': '133-Vieux-Rosemont'},
'id': '133'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5694653361432, 45.5816630209033],
[-73.5683754804235, 45.5814045757918],
[-73.5584435150771, 45.578098690279],
[-73.5557298683366, 45.5757065336466],
[-73.5489772535198, 45.5734435433853],
[-73.5544730757919, 45.5652953442798],
[-73.5546496932451, 45.5649641797921],
[-73.5542787320438, 45.5568764086233],
[-73.5545655421497, 45.55467023726],
[-73.5588620237975, 45.5560173236498],
[-73.573735635149, 45.5607975285183],
[-73.5774327397367, 45.5565544731088],
[-73.5910006798707, 45.5607570868859],
[-73.5863094536503, 45.5661499995185],
[-73.5871520545273, 45.566412729231],
[-73.584731908233, 45.5691066724291],
[-73.5772385119147, 45.5776818920023],
[-73.578130955202, 45.5780689341974],
[-73.5752604702031, 45.5805388907561],
[-73.5739953109801, 45.5819266091566],
[-73.5709328233077, 45.5809046758787],
[-73.5705509760525, 45.5814521659595],
[-73.5694653361432, 45.5816630209033]]]},
'properties': {'district': '134-Marie-Victorin'},
'id': '134'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.7091218538247, 45.5230954877394],
[-73.6918870159802, 45.5123542857052],
[-73.6881524418874, 45.5100541386763],
[-73.6827840991507, 45.5143258168654],
[-73.6744134053365, 45.5090285090174],
[-73.6696337564668, 45.5063911079337],
[-73.6673976326861, 45.5049604588181],
[-73.6660099573454, 45.5044347648104],
[-73.6644157884018, 45.5050492992242],
[-73.6646042365099, 45.504734675849],
[-73.6681641565442, 45.501660999668],
[-73.67484741122, 45.4963374151867],
[-73.680502634204, 45.4920408059609],
[-73.6825483439594, 45.4907732405381],
[-73.6860100016197, 45.4896024241141],
[-73.677264286648, 45.4836591822082],
[-73.6776271543493, 45.4823345919293],
[-73.6827804258142, 45.4635658825978],
[-73.6933043566279, 45.4703396575946],
[-73.6947785817616, 45.4645178045181],
[-73.69619836572, 45.4654974169452],
[-73.7047665432935, 45.4712980390786],
[-73.7080097103994, 45.47334246671],
[-73.7221390583544, 45.4826358450705],
[-73.7241021941398, 45.4814064808358],
[-73.7315756591541, 45.4757155112906],
[-73.7423991292426, 45.4671531227456],
[-73.74247528623, 45.4670360365519],
[-73.7505933570667, 45.4606744381013],
[-73.7626492898165, 45.4684579890562],
[-73.7623181805669, 45.4687557278511],
[-73.7684606113614, 45.4749503791392],
[-73.7661156464615, 45.4767286467613],
[-73.7690019457786, 45.4785035754768],
[-73.7741729540726, 45.4818386741628],
[-73.7681746120908, 45.4847594283289],
[-73.7678463791609, 45.485678039566],
[-73.7664813956616, 45.486482172257],
[-73.7666703097771, 45.4885693048636],
[-73.7671205072924, 45.4890902137182],
[-73.7645934137213, 45.4903739088715],
[-73.7681822983003, 45.4944507802049],
[-73.767927191601, 45.4946223655038],
[-73.7708534417468, 45.4965141396676],
[-73.7735738316828, 45.4981363521851],
[-73.7716579558132, 45.4991257181769],
[-73.7738796981111, 45.5005112554049],
[-73.770851931212, 45.5015263075263],
[-73.7725018897261, 45.5025715611262],
[-73.7709616412032, 45.5034073001873],
[-73.7692002551043, 45.5040137486001],
[-73.7671979733428, 45.5027497284985],
[-73.7653841918245, 45.5034648112556],
[-73.764601206777, 45.5029446682134],
[-73.7638615520544, 45.5034953365559],
[-73.7609994664832, 45.5016752336666],
[-73.7594306007504, 45.5027766325504],
[-73.7582371682807, 45.5020414841587],
[-73.756652358581, 45.5024589334263],
[-73.7547114610262, 45.5033812068779],
[-73.7530750881715, 45.5037537247243],
[-73.7516832079437, 45.5044227485347],
[-73.7550630650544, 45.5065238038199],
[-73.7350991221023, 45.5137867482303],
[-73.7285097856203, 45.5160943522463],
[-73.7358987648866, 45.5207291683311],
[-73.7317546325275, 45.5236815365784],
[-73.7280602953464, 45.5213554616816],
[-73.7217031155859, 45.5267447688191],
[-73.7185119695016, 45.5247508136954],
[-73.7172924358234, 45.5256928911099],
[-73.7145584630039, 45.5239315629596],
[-73.7131122096208, 45.5251637887575],
[-73.7112612170074, 45.5243023856458],
[-73.7091218538247, 45.5230954877394]]]},
'properties': {'district': '141-Côte-de-Liesse'},
'id': '141'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.6510270564502, 45.5263874543882],
[-73.6529551695687, 45.5229726150982],
[-73.6580588118226, 45.5152954959574],
[-73.6620316014577, 45.509044066038],
[-73.6644157884018, 45.5050492992242],
[-73.6660099573454, 45.5044347648104],
[-73.6673976326861, 45.5049604588181],
[-73.6696337564668, 45.5063911079337],
[-73.6744134053365, 45.5090285090174],
[-73.6827840991507, 45.5143258168654],
[-73.6881524418874, 45.5100541386763],
[-73.6918870159802, 45.5123542857052],
[-73.7091218538247, 45.5230954877394],
[-73.6963296087078, 45.5276805484038],
[-73.6939612003867, 45.528347826243],
[-73.6897803429098, 45.5288476157777],
[-73.6870922504792, 45.5286619976995],
[-73.685195685208, 45.5301022578388],
[-73.683124268159, 45.5305991300384],
[-73.6764129283619, 45.5321264506516],
[-73.6747555535799, 45.5323081056009],
[-73.6726124365382, 45.5322997327559],
[-73.6698852350516, 45.5318835785726],
[-73.6555330494037, 45.5277342274232],
[-73.6510270564502, 45.5263874543882]]]},
'properties': {'district': '142-Norman-McLaren'},
'id': '142'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5696609688417, 45.5965806032278],
[-73.5687432258054, 45.5949521683749],
[-73.5690474086577, 45.5937353194892],
[-73.5686767639537, 45.5922969983003],
[-73.5663609324088, 45.5883396268265],
[-73.5642246834943, 45.5872483268508],
[-73.5642198577817, 45.5854079588427],
[-73.563949176176, 45.5849798671748],
[-73.566054883333, 45.5843176844033],
[-73.5648413846768, 45.5830623920281],
[-73.5683754804235, 45.5814045757918],
[-73.5694653361432, 45.5816630209033],
[-73.5732723109658, 45.5829252463303],
[-73.5742252628096, 45.5830975713343],
[-73.5790395581623, 45.5832311484519],
[-73.5817361693186, 45.5828435232896],
[-73.5850508708636, 45.5817485572606],
[-73.5872765077617, 45.5817600646972],
[-73.5896208961855, 45.5825234015516],
[-73.5927968176961, 45.5840511668496],
[-73.5944959844225, 45.585037876555],
[-73.5961671053026, 45.5863788582573],
[-73.5985181690096, 45.5893118445279],
[-73.6020871279873, 45.5931683856944],
[-73.6032485083726, 45.5942192930034],
[-73.6086990780645, 45.5965789895409],
[-73.6101417757025, 45.5974474797099],
[-73.6116347298964, 45.5986698542549],
[-73.6130354491493, 45.6003781128039],
[-73.61467650443, 45.601820884038],
[-73.6125635803426, 45.604373796832],
[-73.6092890313816, 45.6081470965116],
[-73.6079197060538, 45.6094530924621],
[-73.6062298901187, 45.610759685103],
[-73.6048043091085, 45.6094292879636],
[-73.6035616092243, 45.6101078733853],
[-73.6041139394664, 45.6106174089674],
[-73.6028907661658, 45.6112216102358],
[-73.6013378366857, 45.6104025414741],
[-73.5971103983983, 45.6085989887758],
[-73.5889961999073, 45.6050220349527],
[-73.5771288919308, 45.599852413767],
[-73.576232424293, 45.5992577290381],
[-73.5745938220503, 45.5986717630315],
[-73.5726733802096, 45.5977479911912],
[-73.5696609688417, 45.5965806032278]]]},
'properties': {'district': '151-Saint-Léonard-Est'},
'id': '151'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5694653361432, 45.5816630209033],
[-73.5705509760525, 45.5814521659595],
[-73.5709328233077, 45.5809046758787],
[-73.5739953109801, 45.5819266091566],
[-73.5752604702031, 45.5805388907561],
[-73.578130955202, 45.5780689341974],
[-73.5772385119147, 45.5776818920023],
[-73.584731908233, 45.5691066724291],
[-73.5871520545273, 45.566412729231],
[-73.5874046777632, 45.5664890958155],
[-73.5986381445569, 45.5714628841478],
[-73.6016424297946, 45.5727835347079],
[-73.6005459884454, 45.5740149891614],
[-73.6023753660902, 45.5742891313383],
[-73.6043589520305, 45.5755705351656],
[-73.6113135304111, 45.5785547523195],
[-73.6148320474836, 45.580191303428],
[-73.6208358233192, 45.5828408672289],
[-73.623269111324, 45.5839925896586],
[-73.6242513055513, 45.5846473290482],
[-73.6267569494518, 45.5854624669655],
[-73.6280749026379, 45.5838243220039],
[-73.6288186186035, 45.5832571469721],
[-73.6296215435427, 45.5838130726522],
[-73.6202427208594, 45.5951205335532],
[-73.61467650443, 45.601820884038],
[-73.6130354491493, 45.6003781128039],
[-73.6116347298964, 45.5986698542549],
[-73.6101417757025, 45.5974474797099],
[-73.6086990780645, 45.5965789895409],
[-73.6032485083726, 45.5942192930034],
[-73.6020871279873, 45.5931683856944],
[-73.5985181690096, 45.5893118445279],
[-73.5961671053026, 45.5863788582573],
[-73.5944959844225, 45.585037876555],
[-73.5927968176961, 45.5840511668496],
[-73.5896208961855, 45.5825234015516],
[-73.5872765077617, 45.5817600646972],
[-73.5850508708636, 45.5817485572606],
[-73.5817361693186, 45.5828435232896],
[-73.5790395581623, 45.5832311484519],
[-73.5742252628096, 45.5830975713343],
[-73.5732723109658, 45.5829252463303],
[-73.5694653361432, 45.5816630209033]]]},
'properties': {'district': '152-Saint-Léonard-Ouest'},
'id': '152'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5390758626817, 45.4883382585102],
[-73.5377390087046, 45.4867781311819],
[-73.5371875080419, 45.4847716425103],
[-73.5390896331107, 45.4789579782257],
[-73.5400605004001, 45.4771849523131],
[-73.5409045352268, 45.4770676622637],
[-73.544790989561, 45.4746546504853],
[-73.547897885736, 45.4732945786535],
[-73.5519632604747, 45.4713851205092],
[-73.5535995299322, 45.4704935184097],
[-73.5561183847095, 45.4699434381887],
[-73.5571517699907, 45.4699658746605],
[-73.5630845502664, 45.4721519332886],
[-73.5629773154921, 45.472291406797],
[-73.5680238353449, 45.4742185784751],
[-73.5698754985218, 45.474526598925],
[-73.5723445217071, 45.4741023764959],
[-73.5731337395658, 45.4754020852012],
[-73.5751431743146, 45.4755655583636],
[-73.5776045371727, 45.4761591293053],
[-73.5787522413781, 45.4747754151352],
[-73.5814009760351, 45.4720006793341],
[-73.5831499688592, 45.4704494618721],
[-73.586192167734, 45.4685776819367],
[-73.5902980753151, 45.4669303074751],
[-73.593418397905, 45.4661730419256],
[-73.5952982354664, 45.4653094409894],
[-73.5969113989909, 45.4662290782584],
[-73.6006750017194, 45.4693265503939],
[-73.6015380888098, 45.4698449656495],
[-73.5995923966142, 45.4714885118876],
[-73.5966486659517, 45.4732210790839],
[-73.5951347718664, 45.4764466331536],
[-73.5861251156067, 45.4827228896224],
[-73.5851119123332, 45.4822361060294],
[-73.5842729287511, 45.4830658950147],
[-73.5806528881796, 45.4855782409323],
[-73.5812577295116, 45.4863226865868],
[-73.5788051804801, 45.4879299741214],
[-73.5726247033677, 45.4927252183027],
[-73.5671882558807, 45.4901263927885],
[-73.5653550896585, 45.4921968620631],
[-73.5630011277184, 45.4954107671203],
[-73.561988917097, 45.497173589984],
[-73.5607477815647, 45.4979125426916],
[-73.5594748545018, 45.4973055470605],
[-73.5559728136711, 45.4959454567625],
[-73.5545777017417, 45.4947339282606],
[-73.5533130105218, 45.4921853756885],
[-73.5524160214136, 45.4912899988865],
[-73.5507109567109, 45.4904150448375],
[-73.5496180493079, 45.4900890295113],
[-73.5411879980439, 45.4884799718781],
[-73.5398824970348, 45.4880751564896],
[-73.5390758626817, 45.4883382585102]]]},
'properties': {'district': '161-Saint-HenriPetite-BourgognePointe-Saint-Charles'},
'id': '161'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5803978450664, 45.4607242060317],
[-73.580383848446, 45.45869859258],
[-73.5808415940198, 45.4566805659982],
[-73.5822612868352, 45.4543201865436],
[-73.5841878662571, 45.4525126975338],
[-73.5873026203887, 45.4501968887305],
[-73.5895426922804, 45.4479760865095],
[-73.590317536462, 45.4476444830976],
[-73.5946364116012, 45.4432356001591],
[-73.5993656298056, 45.437522488597],
[-73.5996082895714, 45.4375187309259],
[-73.6118008558715, 45.4394499728596],
[-73.6104503124607, 45.4429793199455],
[-73.6094089858961, 45.4442773154325],
[-73.6052123848584, 45.4479821667775],
[-73.6048092799479, 45.4489130784869],
[-73.6068239912076, 45.4545470690524],
[-73.6136079881888, 45.4576954341346],
[-73.6201147014597, 45.4548257159799],
[-73.622324477466, 45.4535901866228],
[-73.6255515041789, 45.4513172221793],
[-73.6269986444794, 45.4501430927141],
[-73.6288149375869, 45.4482900651074],
[-73.6290926270452, 45.4483946176344],
[-73.6320301276656, 45.4495010416609],
[-73.6351722497066, 45.4507225431116],
[-73.6350181512615, 45.4509158064615],
[-73.6314544395632, 45.4527593013115],
[-73.6262003043123, 45.4574918787775],
[-73.6243236842049, 45.4586553508057],
[-73.6200562870233, 45.4616683026575],
[-73.6182352042185, 45.4622268121902],
[-73.6157015928197, 45.4632907897894],
[-73.6121904900053, 45.4648542087469],
[-73.6116004847967, 45.4647691120724],
[-73.6058459619009, 45.4672881102352],
[-73.6056266168094, 45.4676031109374],
[-73.6031619796725, 45.4691032161751],
[-73.6025897276388, 45.4690525247808],
[-73.6015380888098, 45.4698449656495],
[-73.6006750017194, 45.4693265503939],
[-73.5969113989909, 45.4662290782584],
[-73.5952982354664, 45.4653094409894],
[-73.593418397905, 45.4661730419256],
[-73.5902980753151, 45.4669303074751],
[-73.586192167734, 45.4685776819367],
[-73.5831499688592, 45.4704494618721],
[-73.5814009760351, 45.4720006793341],
[-73.5787522413781, 45.4747754151352],
[-73.5776045371727, 45.4761591293053],
[-73.5751431743146, 45.4755655583636],
[-73.5731337395658, 45.4754020852012],
[-73.5723445217071, 45.4741023764959],
[-73.5717046710668, 45.4728345777635],
[-73.5722263249864, 45.4666080942859],
[-73.5725692397967, 45.4663779997673],
[-73.5760636235492, 45.4665267227639],
[-73.57595438059, 45.467731089093],
[-73.5774466724098, 45.4677934094142],
[-73.5787521792962, 45.467573327191],
[-73.5788688512642, 45.4664809032158],
[-73.5806776025411, 45.4665598624633],
[-73.5810988106852, 45.464472934997],
[-73.5809592544789, 45.4629192039784],
[-73.5803978450664, 45.4607242060317]]]},
'properties': {'district': '162-Saint-PaulÉmard'},
'id': '162'},
{'type': 'Feature',
'geometry': {'type': 'MultiPolygon',
'coordinates': [[[[-73.561675647957, 45.457026812229],
[-73.5636503131163, 45.4570986393357],
[-73.5631589565038, 45.4599505630657],
[-73.5803978450664, 45.4607242060317],
[-73.5809592544789, 45.4629192039784],
[-73.5810988106852, 45.464472934997],
[-73.5806776025411, 45.4665598624633],
[-73.5788688512642, 45.4664809032158],
[-73.5787521792962, 45.467573327191],
[-73.5774466724098, 45.4677934094142],
[-73.57595438059, 45.467731089093],
[-73.5760636235492, 45.4665267227639],
[-73.5725692397967, 45.4663779997673],
[-73.5722263249864, 45.4666080942859],
[-73.5717046710668, 45.4728345777635],
[-73.5723445217071, 45.4741023764959],
[-73.5698754985218, 45.474526598925],
[-73.5680238353449, 45.4742185784751],
[-73.5629773154921, 45.472291406797],
[-73.5630845502664, 45.4721519332886],
[-73.5571517699907, 45.4699658746605],
[-73.5566742286267, 45.4697998242277],
[-73.5564729236705, 45.4697250295537],
[-73.5568919723525, 45.4692509155842],
[-73.5584979993156, 45.4688652320405],
[-73.5594741255912, 45.4680886833354],
[-73.5600314607336, 45.4630762897765],
[-73.5602070432843, 45.4599716856435],
[-73.5604361685249, 45.458927727929],
[-73.561675647957, 45.457026812229]]],
[[[-73.531939269639, 45.4668762388698],
[-73.533282030383, 45.4668218592047],
[-73.5391619813113, 45.4629235420104],
[-73.5399777236207, 45.4591888832885],
[-73.5484320046815, 45.4470555292603],
[-73.5539781715369, 45.4450013623675],
[-73.5598960265295, 45.4441434701074],
[-73.5620234184536, 45.4489835563647],
[-73.5598289224776, 45.4530789952144],
[-73.5597287567806, 45.4550947277761],
[-73.5567932176119, 45.4601984189426],
[-73.5563771935053, 45.4660746682549],
[-73.5556877795518, 45.4672628311292],
[-73.5517365614674, 45.4676966587134],
[-73.5498323828317, 45.4691552202777],
[-73.5458565074551, 45.4710106620399],
[-73.544425597308, 45.472837915256],
[-73.541638672543, 45.4745667491612],
[-73.539337021061, 45.4752874231563],
[-73.5374306118892, 45.4744062177182],
[-73.5344866609104, 45.4708347638261],
[-73.5344988591904, 45.4699079767891],
[-73.5334499941273, 45.4695573443126],
[-73.531939269639, 45.4668762388698]]]]},
'properties': {'district': "171-ChamplainL'Île-des-Soeurs"},
'id': '171'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5837871545249, 45.4350036826887],
[-73.5993656298056, 45.437522488597],
[-73.5946364116012, 45.4432356001591],
[-73.590317536462, 45.4476444830976],
[-73.5895426922804, 45.4479760865095],
[-73.5873026203887, 45.4501968887305],
[-73.5841878662571, 45.4525126975338],
[-73.5822612868352, 45.4543201865436],
[-73.5808415940198, 45.4566805659982],
[-73.580383848446, 45.45869859258],
[-73.5803978450664, 45.4607242060317],
[-73.5631589565038, 45.4599505630657],
[-73.5636503131163, 45.4570986393357],
[-73.561675647957, 45.457026812229],
[-73.5644316339364, 45.4531214887569],
[-73.5653629828168, 45.4514382552214],
[-73.5666188947215, 45.4498773089445],
[-73.5684785830554, 45.4481879229679],
[-73.5692699550472, 45.4471436069185],
[-73.5705853638418, 45.446107961992],
[-73.5722579304274, 45.444469116852],
[-73.5739182313887, 45.4433612189646],
[-73.5756800507555, 45.4416593600233],
[-73.5779148011138, 45.4400830529182],
[-73.5837871545249, 45.4350036826887]]]},
'properties': {'district': '172-Desmarchais-Crawford'},
'id': '172'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5734800018833, 45.5049709717948],
[-73.5674300859224, 45.5019457643141],
[-73.5651563545969, 45.5009257536286],
[-73.5607477815647, 45.4979125426916],
[-73.561988917097, 45.497173589984],
[-73.5630011277184, 45.4954107671203],
[-73.5653550896585, 45.4921968620631],
[-73.5671882558807, 45.4901263927885],
[-73.5726247033677, 45.4927252183027],
[-73.5788051804801, 45.4879299741214],
[-73.5812577295116, 45.4863226865868],
[-73.583103429338, 45.4880924257338],
[-73.5822957867321, 45.4883263628527],
[-73.5956809652028, 45.4926003378767],
[-73.5964675380297, 45.491704867985],
[-73.6012074615523, 45.4937019439569],
[-73.6009266859408, 45.4942697485875],
[-73.6045082688859, 45.4947060857692],
[-73.6068399722065, 45.4952769144878],
[-73.6044775189475, 45.4952226776326],
[-73.6033750499038, 45.4967309718248],
[-73.6009279740317, 45.4988800346583],
[-73.5997960499359, 45.5001439911523],
[-73.5977240363362, 45.5016310280474],
[-73.594737745289, 45.5028667176493],
[-73.5941401789655, 45.5033436344744],
[-73.5956108742759, 45.504064067218],
[-73.591464574106, 45.508070751295],
[-73.594191031848, 45.5097864575692],
[-73.5935088435771, 45.5105257693584],
[-73.5949672180747, 45.5109069459258],
[-73.5969012890154, 45.5117790625741],
[-73.5969405107098, 45.5130415385056],
[-73.598896296438, 45.5131127563816],
[-73.5978614314752, 45.5141637733071],
[-73.5968586638591, 45.5145623065118],
[-73.5918451342772, 45.5144729450241],
[-73.5911992183544, 45.5147110287094],
[-73.5902604532774, 45.5157813641729],
[-73.5893088980696, 45.5167596569974],
[-73.582430798457, 45.5136019767056],
[-73.5786781018666, 45.5117608495828],
[-73.5785542203746, 45.5104511791594],
[-73.580113792401, 45.5081921313855],
[-73.5734800018833, 45.5049709717948]]]},
'properties': {'district': '181-Peter-McGill'},
'id': '181'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5448806808084, 45.5191907535652],
[-73.5464379266303, 45.5162854363298],
[-73.5468620115755, 45.513857976795],
[-73.5492190367874, 45.5102959685844],
[-73.5477210054261, 45.5103219824598],
[-73.5469030036515, 45.5117340389128],
[-73.54657799908, 45.5129270270646],
[-73.5456969917881, 45.512357998283],
[-73.5463640090514, 45.5093239803744],
[-73.549695020088, 45.5092129682665],
[-73.550625003396, 45.5079019928894],
[-73.5467100456003, 45.5077980094498],
[-73.5469790182482, 45.5067930379886],
[-73.5514338758453, 45.5065970940784],
[-73.5520469804644, 45.5053720127641],
[-73.5473670408895, 45.5056550070783],
[-73.5477130465639, 45.5046509913685],
[-73.552496564402, 45.5042657932143],
[-73.5528089694944, 45.5031050102093],
[-73.5479779947401, 45.5032960364571],
[-73.5483780292475, 45.5021840045336],
[-73.5528640439438, 45.5019529839854],
[-73.5523299208625, 45.4996958153214],
[-73.5495469612169, 45.4995170102135],
[-73.5501069846685, 45.4916750357777],
[-73.5489559611269, 45.4916509673111],
[-73.5478249505202, 45.4998100412319],
[-73.5461249747178, 45.4997069784511],
[-73.5466960251749, 45.494926043877],
[-73.5457370062228, 45.4948960144495],
[-73.5450679617308, 45.4999819687279],
[-73.5437740015677, 45.5074910365882],
[-73.5427789476457, 45.5078289768043],
[-73.542713028629, 45.5014819775582],
[-73.5425669725168, 45.4977269821455],
[-73.5411679652957, 45.4913989983256],
[-73.5390758626817, 45.4883382585102],
[-73.5398824970348, 45.4880751564896],
[-73.5411879980439, 45.4884799718781],
[-73.5496180493079, 45.4900890295113],
[-73.5507109567109, 45.4904150448375],
[-73.5524160214136, 45.4912899988865],
[-73.5533130105218, 45.4921853756885],
[-73.5545777017417, 45.4947339282606],
[-73.5559728136711, 45.4959454567625],
[-73.5594748545018, 45.4973055470605],
[-73.5607477815647, 45.4979125426916],
[-73.5651563545969, 45.5009257536286],
[-73.5674300859224, 45.5019457643141],
[-73.5734800018833, 45.5049709717948],
[-73.5729588302122, 45.5055494196855],
[-73.571279665339, 45.5083636436696],
[-73.5655904084691, 45.5210639273018],
[-73.5655614721314, 45.5213643879447],
[-73.5652383566418, 45.5238165260966],
[-73.5568838251035, 45.5199246700318],
[-73.5537687235941, 45.5232551201153],
[-73.5497109051325, 45.521356149553],
[-73.5448806808084, 45.5191907535652]]]},
'properties': {'district': '182-Saint-Jacques'},
'id': '182'},
{'type': 'Feature',
'geometry': {'type': 'MultiPolygon',
'coordinates': [[[[-73.5274147442424, 45.5235135910537],
[-73.5251840405205, 45.5163154069544],
[-73.5190996853698, 45.4964289566498],
[-73.5196839019087, 45.4963133966792],
[-73.5192316055091, 45.4951826206437],
[-73.5235780132462, 45.4965380018334],
[-73.5262219855313, 45.4982100373889],
[-73.5284680362731, 45.4999489748907],
[-73.5298469696156, 45.5015420394984],
[-73.5305050225488, 45.5047999722322],
[-73.5301920008631, 45.5074609662696],
[-73.5284829714113, 45.5111469746062],
[-73.5295139475797, 45.521700975721],
[-73.5275250227419, 45.5218729979917],
[-73.5274147442424, 45.5235135910537]]],
[[[-73.5323979026789, 45.5309116588315],
[-73.5322539821252, 45.5289053155386],
[-73.532650406906, 45.5287379966455],
[-73.535473289372, 45.5289601566106],
[-73.5360719733226, 45.5280409644584],
[-73.535776948517, 45.527560047342],
[-73.5344149864457, 45.5272360422621],
[-73.5339490789414, 45.5259734056912],
[-73.5318552691702, 45.5248370417729],
[-73.5314333871381, 45.5222881159041],
[-73.5315020312839, 45.5206100031596],
[-73.5304254498686, 45.5175627808954],
[-73.5300105388493, 45.5149954869969],
[-73.530089354595, 45.5141148861583],
[-73.5320378226962, 45.5082952174682],
[-73.5331764353799, 45.5063562405992],
[-73.5349739836122, 45.5062349788193],
[-73.5356400145159, 45.5066940066737],
[-73.5374959977644, 45.5096790170141],
[-73.5387299917373, 45.5139430070273],
[-73.5384300301647, 45.5176120247025],
[-73.5393770324368, 45.5206029708317],
[-73.5399389592119, 45.523607991237],
[-73.5390530375969, 45.5256939673896],
[-73.5354039767675, 45.5305800445252],
[-73.5342920245728, 45.5315010077074],
[-73.5329380014176, 45.53135795749],
[-73.5323979026789, 45.5309116588315]]],
[[[-73.5448806808084, 45.5191907535652],
[-73.5497109051325, 45.521356149553],
[-73.5537687235941, 45.5232551201153],
[-73.5568838251035, 45.5199246700318],
[-73.5652383566418, 45.5238165260966],
[-73.5641429566138, 45.5273492053093],
[-73.5613401818778, 45.5359226324552],
[-73.5592280432661, 45.5399028690768],
[-73.550216365092, 45.5389758922042],
[-73.5482541001656, 45.5383569002539],
[-73.5473499781753, 45.5376709059424],
[-73.5439636509721, 45.5334697006227],
[-73.5428587889529, 45.5304546205586],
[-73.5417879567955, 45.529933001055],
[-73.542631029933, 45.5272240023092],
[-73.5433079570219, 45.5259280339674],
[-73.5450449609183, 45.5202409952069],
[-73.5448806808084, 45.5191907535652]]]]},
'properties': {'district': '183-Sainte-Marie'},
'id': '183'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5986381445569, 45.5714628841478],
[-73.6027105259893, 45.5669595870386],
[-73.6076346034193, 45.5613579100341],
[-73.6093881709895, 45.5598575160123],
[-73.6142388370954, 45.5543735967318],
[-73.6161654573353, 45.5519916303917],
[-73.6217484540132, 45.5544783077209],
[-73.6240413737876, 45.5555253903511],
[-73.6453511352974, 45.5647725775888],
[-73.6446417578686, 45.5658132919643],
[-73.6362833815582, 45.5758266113331],
[-73.6363215300962, 45.5759177646435],
[-73.6327012962769, 45.5799802985646],
[-73.631962332515, 45.579640175342],
[-73.6288186186035, 45.5832571469721],
[-73.6280749026379, 45.5838243220039],
[-73.6267569494518, 45.5854624669655],
[-73.6242513055513, 45.5846473290482],
[-73.623269111324, 45.5839925896586],
[-73.6208358233192, 45.5828408672289],
[-73.6148320474836, 45.580191303428],
[-73.6113135304111, 45.5785547523195],
[-73.6043589520305, 45.5755705351656],
[-73.6023753660902, 45.5742891313383],
[-73.6005459884454, 45.5740149891614],
[-73.6016424297946, 45.5727835347079],
[-73.5986381445569, 45.5714628841478]]]},
'properties': {'district': '191-Saint-Michel'},
'id': '191'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.5871520545273, 45.566412729231],
[-73.5863094536503, 45.5661499995185],
[-73.5910006798707, 45.5607570868859],
[-73.5975914187124, 45.553207322408],
[-73.6019471163738, 45.5481178990012],
[-73.6035398110948, 45.5463469119155],
[-73.6070387029669, 45.5479557550382],
[-73.6086846729618, 45.5461409843801],
[-73.6205880272051, 45.5514560807313],
[-73.6201064769685, 45.5520190517324],
[-73.6235005117779, 45.5536358848324],
[-73.6217484540132, 45.5544783077209],
[-73.6161654573353, 45.5519916303917],
[-73.6142388370954, 45.5543735967318],
[-73.6093881709895, 45.5598575160123],
[-73.6076346034193, 45.5613579100341],
[-73.6027105259893, 45.5669595870386],
[-73.5986381445569, 45.5714628841478],
[-73.5874046777632, 45.5664890958155],
[-73.5871520545273, 45.566412729231]]]},
'properties': {'district': '192-François-Perrault'},
'id': '192'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.6168611349556, 45.5357046144078],
[-73.618922206967, 45.5366652760056],
[-73.6407295659042, 45.5429686686779],
[-73.6398673671325, 45.5441488267699],
[-73.6363671046978, 45.548169415833],
[-73.6342899238824, 45.5494628161417],
[-73.6325600663803, 45.5499795021129],
[-73.6301686544477, 45.5503989164938],
[-73.6278096771011, 45.5513024018691],
[-73.6235005117779, 45.5536358848324],
[-73.6201064769685, 45.5520190517324],
[-73.6205880272051, 45.5514560807313],
[-73.6086846729618, 45.5461409843801],
[-73.6123252903368, 45.5421333051385],
[-73.6144250141163, 45.5383032859687],
[-73.6168611349556, 45.5357046144078]]]},
'properties': {'district': '193-Villeray'},
'id': '193'},
{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-73.6170925681517, 45.5277209056734],
[-73.617235572865, 45.5277835686717],
[-73.6208637881685, 45.5236565043515],
[-73.6221372911404, 45.5240220054992],
[-73.6227576775837, 45.5233405909978],
[-73.6485543103777, 45.5308320827376],
[-73.6407295659042, 45.5429686686779],
[-73.618922206967, 45.5366652760056],
[-73.6168611349556, 45.5357046144078],
[-73.6182756954315, 45.5346855542873],
[-73.6215351178101, 45.5311083503899],
[-73.6190955864224, 45.5306548374863],
[-73.6174856875378, 45.5297416402976],
[-73.6170629786343, 45.5290836882431],
[-73.6170925681517, 45.5277209056734]]]},
'properties': {'district': '194-Parc-Extension'},
'id': '194'}]}
## Outline symbol maps.
import plotly.express as px
df = px.data.gapminder()
fig = px.scatter_geo(df, locations="iso_alpha", color="continent", hover_name="country", size="pop",
animation_frame="year", projection="natural earth")
fig.show()
px.data.gapminder()
| country | continent | year | lifeExp | pop | gdpPercap | iso_alpha | iso_num | |
|---|---|---|---|---|---|---|---|---|
| 0 | Afghanistan | Asia | 1952 | 28.801 | 8425333 | 779.445314 | AFG | 4 |
| 1 | Afghanistan | Asia | 1957 | 30.332 | 9240934 | 820.853030 | AFG | 4 |
| 2 | Afghanistan | Asia | 1962 | 31.997 | 10267083 | 853.100710 | AFG | 4 |
| 3 | Afghanistan | Asia | 1967 | 34.020 | 11537966 | 836.197138 | AFG | 4 |
| 4 | Afghanistan | Asia | 1972 | 36.088 | 13079460 | 739.981106 | AFG | 4 |
| ... | ... | ... | ... | ... | ... | ... | ... | ... |
| 1699 | Zimbabwe | Africa | 1987 | 62.351 | 9216418 | 706.157306 | ZWE | 716 |
| 1700 | Zimbabwe | Africa | 1992 | 60.377 | 10704340 | 693.420786 | ZWE | 716 |
| 1701 | Zimbabwe | Africa | 1997 | 46.809 | 11404948 | 792.449960 | ZWE | 716 |
| 1702 | Zimbabwe | Africa | 2002 | 39.989 | 11926563 | 672.038623 | ZWE | 716 |
| 1703 | Zimbabwe | Africa | 2007 | 43.487 | 12311143 | 469.709298 | ZWE | 716 |
1704 rows × 8 columns
## Choropleth maps.
import plotly.express as px
df = px.data.gapminder()
fig = px.choropleth(df, locations="iso_alpha", color="lifeExp", hover_name="country", animation_frame="year", range_color=[20,80])
fig.show()
## Polar plots.
import plotly.express as px
df = px.data.wind()
fig = px.scatter_polar(df, r="frequency", theta="direction", color="strength", symbol="strength",
color_discrete_sequence=px.colors.sequential.Plasma_r)
fig.show()
px.data.wind()
| direction | strength | frequency | |
|---|---|---|---|
| 0 | N | 0-1 | 0.5 |
| 1 | NNE | 0-1 | 0.6 |
| 2 | NE | 0-1 | 0.5 |
| 3 | ENE | 0-1 | 0.4 |
| 4 | E | 0-1 | 0.4 |
| ... | ... | ... | ... |
| 123 | WSW | 6+ | 0.1 |
| 124 | W | 6+ | 0.9 |
| 125 | WNW | 6+ | 2.2 |
| 126 | NW | 6+ | 1.5 |
| 127 | NNW | 6+ | 0.2 |
128 rows × 3 columns
## Radar charts.
import plotly.express as px
df = px.data.wind()
fig = px.line_polar(df, r="frequency", theta="direction", color="strength", line_close=True,
color_discrete_sequence=px.colors.sequential.Plasma_r)
fig.show()
## Polar bar charts.
import plotly.express as px
df = px.data.wind()
fig = px.bar_polar(df, r="frequency", theta="direction", color="strength", template="plotly_dark",
color_discrete_sequence= px.colors.sequential.Plasma_r)
fig.show()
## Ternary charts.
import plotly.express as px
df = px.data.election()
fig = px.scatter_ternary(df, a="Joly", b="Coderre", c="Bergeron", color="winner", size="total", hover_name="district",
size_max=15, color_discrete_map = {"Joly": "blue", "Bergeron": "green", "Coderre":"red"} )
fig.show()